2013-12-09 47 views
0

我开发了我的插件,并且遇到了一些奇怪的问题。当我包括与此代码jQuery的LIB文件jquery lib不包括

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 

它的正常工作,但是当我包括jQuery的库与此代码它不工作

<script src="<?php echo plugins_url(); ?> /kp_contactus/js/jquery.js"> </script> 

的路径是正确的,我有检查和本地jquery lib版本是jQuery v1.10.2

我得到控制台错误是...

Uncaught TypeError: Property '$' of object [object Object] is not a function ?page_id=19:108 (anonymous function)

有人可以提出有什么问题吗?

$('#contact').validate({ 
     /* Making ajax request on successfull submition*/ 
     submitHandler : function (form){ 
      var name=$("#firstname").val(); 
      var email=$("#useremail").val(); 
      var contact=$("#mobile").val(); 
      var type=$("#type").val(); 
      var msg=$("#message").val(); 
      $("#send").attr("disabled",true).html("Sending"); 
      var data = { 'name': name, 'email' : email, 'contact' : contact, 'type' : type, 'msg' : msg }; 
      $.ajax({ 
       url : '<?php echo plugins_url();?>'+'/kp_contactus/kp_contact_config.php', 
       type : 'POST', 
       data : {contact:JSON.stringify(data)}, 
       success : function (msg) 
       { 
        $("#info").fadeIn().html(msg).fadeOut(5000); 
        $("#send").attr("disabled",false).html("Send"); 
        $("#contact").find("input").val(""); 
        $("#contact").find("textarea").val(""); 
       } 
      }) 
     }, 
+0

请向我们展示pluginsurl函数,我也建议把它变成一个字符串常量。 – Mazzy

+0

哪里使用$?显示代码 – tariq

+0

@tariq更新了我的问题 –

回答

2

当为WordPress编写jQuery代码,我经常使用jQuery('#getId')代替$('#getId')和它的作品,你尝试过吗?

这是一个有趣的和brief article,可以帮助解释它。

+0

但$工作时,我正在使用谷歌api路径为jquery –

+0

现在我得到这个错误“未捕获的ReferenceError:jQuery没有定义” –

1

许多JavaScript库使用$作为函数或变量名称,就像jQuery一样。在jQuery的情况下,$是jQuery的别名,所以所有功能都可以在不使用$的情况下使用。有一种可能性,即其冲突的所以使用jQuery的关键字来代替$

参考您的这个评论“现在我得到这个错误‘未捕获的ReferenceError:jQuery是没有定义’这意味着,库没有被发现仔细检查此

同样如HTTP指出通过查希尔放://

+0

我越来越更改$与JQuery后出现错误“我收到此错误”未捕获的ReferenceError:JQuery未定义“ –

+1

小j不是大写 – tariq

+0

到CDN的URL是正确的,不需要添加'http:' –

1

有时不同的库冲突(正如其他人不要求一定是指出)超过$

<script src="other_lib.js"></script> 
<script src="jquery.js"></script> 
<script> 
$.noConflict(); // releases $ from jQuery 

jQuery(document).ready( // you must need to use jQuery here 

function($) { // you passed $ as a parameter for jQuery 

    // Use jQuery code with $ keyword 
    $("div a").show(); 
}); 

// Use other library with $ keyword 
$("content").style.display = "none"; 

</script> 
+1

被很好地捕捉,你有很棒的眼睛:) – tariq

+2

它也适用于//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js 这个以前的堆栈可以解释有点http://stackoverflow.c om/questions/9646407/two-forward-slashes-in-a-url-src-href-attribute –

+0

没有http://它正在工作......我在所有项目中都使用这个路径,而且我没有收到问题直到现在... –