我正在将我的html文件转换为WordPress主题,我正在使用插件ZClip将副本文本复制到剪贴板.ZClip插件在我的html演示中工作正常,但是当转换为WordPress时,我得到了这个奇怪的语法错误"uncaught TypeError:对象[object object]的属性'$'不是zclip.js文件中第288行的函数" 是
$(this.domElement).data('zclipId', 'zclip-' + this.movieId);
Run Code Online (Sandbox Code Playgroud)
我认为这是变量$不确定的东西.我读了一些关于jQuery可能在WP中相互冲突的内容,所以我将main.js文件更改为
jQuery(document).ready(function($){
...
$("button").zclip({
path:'js/ZeroClipboard.swf',
copy: function() { return $(this).attr("data-coupon"); }
});
});
Run Code Online (Sandbox Code Playgroud)
的functions.php
<?php
function load_styles_and_scripts(){
//load css
wp_enqueue_style( 'main-styles', get_template_directory_uri().'/style.css' );
// load scripts
wp_enqueue_script( 'jquery', 'http://code.jquery.com/jquery-1.10.1.min.js' );
wp_enqueue_script( 'zclip-script', get_template_directory_uri().'/js/zclip.js' );
wp_enqueue_script( 'main-script', get_template_directory_uri().'/js/main.js' );
}
add_action('wp_enqueue_scripts', 'load_styles_and_scripts');
Run Code Online (Sandbox Code Playgroud)
终于在一整天后想出来了,哈哈.好像WP 3.5.2加载旧版本的jQuery 1.8.3并且我使用的是新版本而且因为这行不加载它
wp_enqueue_script( 'jquery', 'http://code.jquery.com/jquery-1.10.1.min.js' );
Run Code Online (Sandbox Code Playgroud)
也许'jquery'是为WP的本地jquery安装保留的,我将其更改为并且我的网站开始工作,但根据用户在这里不推荐.
wp_enqueue_script( 'jq', 'http://code.jquery.com/jquery-1.10.1.min.js' );
Run Code Online (Sandbox Code Playgroud)