WP_enQueue_SCRIPT在不同的浏览器上不同的时间调用jQuery?

时间:2011-11-09 作者:Tom Auger

这毫无意义,但在跨浏览器查看我的视图源时,wp_localize_script() 正在按预期为除IE7、8、9以外的所有浏览器插入标记。这些浏览器中根本没有脚本标记。我将它绑定到“jquery”,因为我想确保它无论如何都包含在内(而不是绑定到任何特定的用户定义脚本)。它在我的主题函数中被调用。php文件。

wp\\u localize\\u脚本的文档似乎建议在调用此函数之前必须注册脚本。假设函数总是在同一个位置调用,那么jQuery可能在不同的时间排队或注册,具体取决于浏览器?这看起来确实很奇怪,因为WordPress本身并没有做很多现成的浏览器检测。

如果我将wp\\u localize\\u脚本绑定到我的一个自定义排队脚本,并确保函数调用在该脚本排队后立即进行,那么我可以让它工作。这就是为什么我怀疑它与jQuery的排队顺序有关。

有人能告诉我这里可能发生了什么吗?

2 个回复
SO网友:David Gard

我这样做,效果很好。确保您的站点上没有在其他任何地方定义jQuery(比如在标题中手动定义),因为有些浏览器不喜欢这样。

/**
 * Load assets on initiation
 */
add_action(\'init\', \'load_assets\');
function load_assets(){
    wp_enqueue_scripts(\'jquery\');
}

SO网友:Martin Zeitler

这就是如何加载最新的jQuery——不管怎样。

wp_deregister_script( \'jquery\' );
wp_register_script(\'jquery\', \'http://code.jquery.com/jquery-1.7.min.js\',array(),\'1.7\');
wp_enqueue_script(\'jquery\');
希望这有帮助。codeFX.biz

结束

相关推荐

管理界面问题-是否超大?JQuery?

wordpress管理中的thickbox功能似乎突然失效了,我很难弄明白为什么会这样以及如何修复它。单击“特色图像”按钮将内容加载到窗口中,而不是模式中。单击“publish”框中“published”旁边的编辑根本没有任何作用(我认识到它不是thickbox,所以我认为它一定是其他东西)。我假设这与jQuery或thickbox有关,但我不确定如何找出问题所在,我找不到另一个有相同错误的问题。不幸的是,它在实时站点上(因此我无法打开wp调试),当我向本地服务器镜像时,问题没有出现。有什么想法吗?