0

私はのを変更しようとしていpositionます

<div class="BannerRedesign" id="Banner" style="position: fixed ! important; height: 36px ! important; width: 100% ! important;">
    <div class="BannerCenterContainer" id="NavigationRedesignBannerContainer">

(roblox バナー要素、フロートしないようにしようとしている)relativeすべての権限を有効にして、Greasemonkey を使用する。ただし、毎回、ドキュメントの読み込みが終了すると、フローティングに戻ります。

別の要素に追加しようとbannercentercontainerしましたが、それが正しいかどうかわかりません...これを相対位置に変更するのを手伝ってもらえますか?

私は試した:

$('#Banner').css('position', 'relative !important')

if ($('#Banner').css('position') == 'fixed') {
$('#Banner').css('position', 'relative')
}

、しかし、ページの読み込みが完了すると元に戻りました。

4

1 に答える 1

1

そのバナーはおそらく静的 HTML で設定され、AJAX によって定期的にリセットされます。

これを修正する 1 つの方法は、waitForKeyElements() ユーティリティを使用することです。

質問で指定されたコードで動作する完全なスクリプトを次に示します。

// ==UserScript==
// @name     _Unfix annoying banner
// @include  http://YOUR_SERVER.COM/YOUR_PATH/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant    GM_addStyle
// ==/UserScript==
/*- The @grant directive is needed to work around a design change
    introduced in GM 1.0.   It restores the sandbox.
*/

waitForKeyElements ("#Banner", unFixThePositioning);

function unFixThePositioning (jNode) {
    jNode.css ('position', 'relative');

    //-- Or, for a little extra "Oomph":
    jNode[0].style.setProperty ("position", "relative", "important");

    return true;    //-- Check repeatedly.
}
于 2013-01-31T05:10:45.070 に答える