正确的jQuery标记

时间:2013-08-15 08:33:36

标签: javascript jquery markup

我如何将以下代码写入jQuery?

       $("select").change(function(){
    if($("#selectedid").is(":selected")){
        $("#showblock").slideDown("slow");
    } else { $("#showblock").slideUp("slow"); } 
});

我也尝试了以下内容:

jQuery("select").change(function($){
        if($("#selectedid").is(":selected")){
            $("#showblock").slideDown("slow");
        } else { $("#showblock").slideUp("slow"); } 
    });

这是为wordpress。 谢谢!

3 个答案:

答案 0 :(得分:2)

在wordpress中,你可能会收到错误,因为wordpress包含了一个jquery版本,它被编辑为不使用'$'运算符

您必须使用jQuery替换'$'的每个实例 所以你的代码应该是这样的;

jQuery("select").change(function(){
    if(jQuery("#selectedid").is(":selected")){
        jQuery("#showblock").slideDown("slow");
    } else { 
        jQuery("#showblock").slideUp("slow"); 
    } 
});

尝试并告诉我它是如何为你工作的。

更简单的方法就是包含标准(下载)版本的jquery并将其包含在header.php中

答案 1 :(得分:1)

我认为这是因为您必须解决"$"

的冲突

来自Word Press Codex

jQuery(document).ready(function($) {
    // Inside of this function, $() will work as an alias for jQuery()
    // and other libraries also using $ will not be accessible under this shortcut
});

答案 2 :(得分:0)

您需要将代码包装成立即调用函数并将Jquery传递给它。

(function($) {

    $("select").change(function(){
       if($("#selectedid").is(":selected")){
           $("#showblock").slideDown("slow");
       } else { 
           $("#showblock").slideUp("slow");
       } 
  });

})(jQuery);