1

どうすれば書けますか

 var menu = $('.something');

次のように外部 .js ファイルで使用します。

 $(menu).attr("class", "active");

また、インライン コードの後に​​外部 js ファイルを宣言しようとしましたが、機能しません。

4

2 に答える 2

6

varキーワードを使用しないでください。これにより、変数がグローバルになります。

ただし、これはあまり良い考えではありません。それはあなたのグローバル名前空間を台無しにします(したがって、異なるオリジンからの複数のjavascriptファイルがグローバル名前空間を台無しにし、互いの変数をオーバーライドしている場合、問題を引き起こす可能性があります).

よりクリーンなソリューションは、非常に一意の名前でグローバル オブジェクトを設定し、それにプロパティを追加することです。例えば:

MyProject = {};
MyProject.menu = $(".something");

次に、別の場所:

$(MyProject.menu).attr("class", "active");
于 2009-07-20T20:24:23.860 に答える
1

それを参照する外部jsファイルをインポートする前に定義する限り、menuなぜそれが機能しないのかわかりません。お気に入り:

<script type="text/javascript">
    menu = $('.something');
</script>
<script type="text/javascript" src="/js/fileThatReferencesMenu.js"></script>

試してみてください。

于 2009-07-20T20:27:21.327 に答える