我试图通过我的扩展程序在我的网站的所有/部分页面中插入一些js代码。
我需要一个动态版本(托管在.phtml文件中)(脚本部分):
<default>
<reference name="head">
<block type="core/text" name="simple_example_javascript_block">
<action method="setText">
<text><![CDATA[
<script type="text/javascript">
alert("foo");
</script>
//]]></text>
</action>
</block>
</reference>
</default>
我在SO或Google上找不到任何正常工作的代码......
谢谢
答案 0 :(得分:0)
这应该适用于您使用CDATA
<reference name="head">
<block type="core/text" name="your.block.name">
<action method="setText">
<text><![CDATA[<script type="text/javascript">alert('hello');</script>]]></text>
</action>
</block>
</reference>
已编辑:要通过扩展程序将JS代码插入某些页面,您需要做的就是从您的扩展程序布局文件,通过引用页面,您可以添加js文件,如下所示
<cms_index_index> <!--/ To add js only in homepage similarly for other pages take their layout handle -->
<reference name="head">
<!--/ to add from root ie. js/yourmodulename/script.js -->
<action method="addJs"><script>yourmodulename/script.js</script></action>
<!--/ to add from skin activated theme / base ie. skin/frontend/base/default/js/yourmodulename/script.js -->
<action method="addItem"><type>skin_js</type><name>js/yourmodulename/script.js</name></action>
</reference>
</cms_index_index>
答案 1 :(得分:0)
我终于使用了:
<checkout_onepage_success translate="label">
<label>One Page Checkout Success</label>
<reference name="checkout.success.js">
<block type="page/html_footer" name="luckycycle_js" as="luckycycle_js" template="Luckycycle/js.phtml" output="toHtml" />
</reference>
</checkout_onepage_success>
Luckycycle / js.phtml是动态的,由php生成。