2
<default> 
  <reference name="head">
            <action method="addJs"><js>splurgyjs/jquery-1.7.2.min.js</js></action>
  </reference>
</default>

それは私のレイアウトフォルダにありますhello.xml

問題は、jQuery を使用するページで新しいナビゲーション タブを作成し、カスタム モジュール ページで完璧に動作することです。ただし、jQueryは、メニューが機能しなくなり、競合するなど、他のすべてのページの他のすべてを壊します。レイアウトを自分のページにのみ表示するにはどうすればよいですか、または競合せずに jQuery を含めるにはどうすればよいですか?

更新、トムの提案を試しました:

config.xml で:

 <layout>
         <updates handle="index_settings">
            <embeds>
                 <file>justin.xml</file>
            </embeds>
         </updates>
     </layout>

justin.xml で:

<justin_index_settings>
         
        <reference name="head">
            <action method="addItem">
           <type>js_css</type>
           <name>justin/style.css</name>
        </action>
        </reference>
    </justin_index_settings>
4

1 に答える 1

0

XMLは次のようになります。

<my_own_custom_handle>
    <reference name="head">
        <action method="addJs"><js>splurgyjs/jquery-1.7.2.min.js</js></action>
    </reference>
</my_own_custom_handle>

そして、module_controller_actionハンドルから。モジュール<catalog_product_view>からの例として取り上げます。Mage_Catalog

<catalog_product_view>
    <update handle="my_own_custom_handle" />
</catalog_product_view>

このようにして、Javascriptはハンドルによって生成されたページに対してのみロードされるようになりましたcatalog_product_view。したがって、製品の詳細ページのみがロードされ、リストページなどはロードされません。この場合、このハンドルをモジュールハンドルに合わせて調整するだけで済みますjustin_index_settings

于 2012-08-06T19:56:30.683 に答える