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>

我想删除原型、脚本库并使用 jquery 代替它们。我如何知道这些库在哪里使用以及其余 js 文件的作用是什么。无论您的系统是否需要这些文件,都不需要包含这些文件。

有什么提示吗?

4

3 回答 3

1

javascript文件通常有2个主要位置...

您上面提到的位于[magento-root]/js

里面有很多文件夹,里面存放着不同的 js 文件(比如js/scriptaculous/*.js)。

您的模板还可以包含自定义 js 文件..

它们通常位于skin/frontend/[package]/[template]/js

于 2012-04-04T19:01:03.120 回答
1

您可以通过 Layouts 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 文件仅可用于一个(或某些)模块,则不应通过 page.xml 加载它,而应直接通过所需的模块布局加载。示例:如果您需要为“联系我们”页面删除/添加 CSS/JS 文件,那么您需要在 contacts.xml 中进行声明,否则您的文件将在您商店的几乎所有地方加载和/或删除。

最后,除非您制作了一个没有任何 javascript 的自定义主题完整的 css ,否则我认为没有理由删除原型和/或 scriptaculous 文件。关于 jquery,它可以很容易地添加到原型之上,但请确保正确配置它以避免这两个库之间的任何冲突。

于 2012-04-04T23:09:41.460 回答
0

如果您想知道 JS 的使用位置,请查看您的,或者如果您使用的是默认模板布局,那么默认模板布局......就像您给出的示例一样。但我建议您保留原型并为您需要的位添加 JQuery(因为许多管理功能等使用原型),并且在一起使用这两个库时可以解决“$”问题 [参见 http://docs .jquery.com/Using_jQuery_with_Other_Libraries]

于 2012-04-04T15:08:01.003 回答