停止WordPress将Java脚本处理为文本

时间:2014-09-21 作者:AStopher

我目前正在开发一个公交路线规划器,使用Wordpress作为我的CMS。我添加了一些JQuery代码来添加对ajax的支持(这样访问者就可以使用route planner并加载路线,而无需转到其他页面),但它不起作用。

在使用Chrome的Inspect元素进行仔细检查时,Wordpress似乎在向Javascript代码添加段落,尽管Javascript代码已正确配置,并被识别为:

enter image description here

该项目的另一位成员也有同样的问题:

enter image description here

Wordpress为什么要这样做,我如何阻止Wordpress在代码中添加段落?我是通过页面的原始文本编辑器添加代码的,所以这不像是通过视觉模式添加代码。

2 个回复
最合适的回答,由SO网友:DrewAPicture 整理而成

post编辑器实际上不是用来将JavaScript之类的功能代码插入页面的。

你在帖子编辑器中输入的任何内容都会被浏览一遍wpautop() 在输出之前,这是添加段落标记的地方——即使您通过文本模式输入。我建议通过页面上的挂钩而不是通过post编辑器输出JavaScript。

类似这样:

/**
 * Output JS to the page head.
 */
function output_head_js() {
    ?>
    <script type=“text/javascript”>
        $( ‘#gosearch’ ).click( function() {
        …
    });
    </script>
    <?php
}
add_action( \'wp_head\', \'output_head_js\' );

SO网友:Brandon J Brotsky

您还可以删除代码中的所有中断。例如:

而不是:

function() doSomething() {
//code goes here
}
执行以下操作:

function() doSomething() {//code goes here}
这很烦人,但它仍允许您使用WordPress的文本编辑器。

结束

相关推荐

使用jQuery.get时出现admin-ajax.php(已中止)错误

有一件事让我很困惑,那就是:当我通过Ajax加载javascript文件并观察正在发出的http请求时,我在Firebug中看到以下错误:admin Ajax。php(中止)请参见此图片:导致此错误的是jquery get file函数:jQuery.get(\'/assets/js/shop.js\', function(data) { eval(data); }); 如果我删除了上面的脚本,那么就不会再有错误了。有什么建议吗?编辑1:我已经明白了为什么会出现这些中止的错误。在商店里。js文