0

Magento には、デフォルトですべての js ファイルが含まれています。

<script type="text/javascript" src="js/prototype/prototype.js"></script>
<script type="text/javascript" src="js/lib/ccard.js"></script>
<script type="text/javascript" src="js/prototype/validation.js"></script>
<script type="text/javascript" src="js/scriptaculous/builder.js"></script>
<script type="text/javascript" src="js/scriptaculous/effects.js"></script>
<script type="text/javascript" src="js/scriptaculous/dragdrop.js"></script>
<script type="text/javascript" src="js/scriptaculous/controls.js"></script>
<script type="text/javascript" src="js/scriptaculous/slider.js"></script>
<script type="text/javascript" src="js/varien/js.js"></script>
<script type="text/javascript" src="js/varien/form.js"></script>
<script type="text/javascript" src="js/varien/menu.js"></script>
<script type="text/javascript" src="js/mage/translate.js"></script>
<script type="text/javascript" src="js/mage/cookies.js"></script>

プロトタイプ、scriptaculous ライブラリを削除し、代わりに jquery を使用したいと考えています。これらのライブラリが使用されている場所と、残りの js ファイルの役割を知るにはどうすればよいですか。これらのファイルは、システムが必要とするかどうかに関係なく、不要に含まれています。

ヒントはありますか?

4

3 に答える 3

1

レイアウト XML を介して JS ファイル (および CSS ファイル) を追加/削除できます。

ほとんどの JS ファイルは app/design/frontend/package_name/theme_name/layout/page.xml 経由で読み込まれます

       <block type="page/html_head" name="head" as="head">
            <action method="addJs"><script>prototype/prototype.js</script></action>
            <action method="addJs"><script>lib/ccard.js</script></action>
            <action method="addJs"><script>prototype/validation.js</script></action>
            <action method="addJs"><script>scriptaculous/builder.js</script></action>
            <action method="addJs"><script>scriptaculous/effects.js</script></action>
            <action method="addJs"><script>scriptaculous/dragdrop.js</script></action>
            <action method="addJs"><script>scriptaculous/controls.js</script></action>
            <action method="addJs"><script>scriptaculous/slider.js</script></action>
            <action method="addJs"><script>varien/js.js</script></action>
            <action method="addJs"><script>varien/form.js</script></action>
            <action method="addJs"><script>varien/menu.js</script></action>
            <action method="addJs"><script>mage/translate.js</script></action>
            <action method="addJs"><script>mage/cookies.js</script></action>

このレイアウト page.xml は、ほとんどのページで読み込まれるデフォルトのレイアウトのようなものです。ここで(独自のテーマ内で)必要な行をコメントするか、jquery ファイルを宣言できます。専用フォルダーで jquery ファイルを使用できるようにしてください。

ただし、これらの jquery ファイルを 1 つ (またはいくつか) のモジュールのみで使用できるようにする必要がある場合は、page.xml 経由ではなく、目的のモジュール レイアウト経由で直接ロードする必要があります。例: お問い合わせページの CSS/JS ファイルを削除/追加する必要がある場合は、contacts.xml で宣言を行います。そうしないと、ストアのほぼすべての場所でファイルが読み込まれたり、削除されたりします。

最後に、カスタム テーマを JavaScript なしで完全な CSSにしない限り、prototype ファイルや scriptaculous ファイルを削除する理由はないと思います。jquery に関しては、プロトタイプの上に簡単に追加できますが、両方のライブラリ間の競合を避けるために適切に構成してください。

于 2012-04-04T23:09:41.460 に答える
1

通常、javascript ファイルには 2 つの主要な場所があります...

上記のものは次の場所にあります[magento-root]/js

内部には、さまざまな js ファイル ( などjs/scriptaculous/*.js) を格納する多くのフォルダーがあります。

テンプレートには、カスタム js ファイルを含めることもできます。

通常は次の場所にあります。skin/frontend/[package]/[template]/js

于 2012-04-04T19:01:03.120 に答える
0

JS がどこで使用されているかを知りたい場合は、またはデフォルトを使用している場合はデフォルトのテンプレート レイアウトを参照してください...あなたが与えた例のように。ただし、必要な部分については両方のプロトタイプを保持し、JQuery を追加することをお勧めします (多くの管理機能など​​がプロトタイプを使用するため)。2 つのライブラリを一緒に使用する場合の「$」問題の回避策があります [http://docs を参照] .jquery.com/Using_jQuery_with_Other_Libraries]

于 2012-04-04T15:08:01.003 に答える