如果条件为功能

时间:2015-10-21 06:17:22

标签: jquery

所以,我有以下js文件检查几个函数:

jQuery(document).ready(function() {
    RebindClickModal_show();
    RebindClickModal_contact();     
}); 

但是如果页面没有这些功能,那么我会得到参考错误。

所以,我想添加一个if条件来检查这些函数是否首先存在。

这样做最好的方法是什么?

感谢。

3 个答案:

答案 0 :(得分:2)

尝试使用isFunction,如下所示:

jQuery(document).ready(function() {

    if ( $.isFunction($.fn.RebindClickModal_show) ) {
         RebindClickModal_show();
    }


    if ( $.isFunction($.fn.RebindClickModal_contact) ) {
        RebindClickModal_contact();  
    }

});

答案 1 :(得分:1)

您可以使用

检查存在的功能
jQuery(document).ready(function() {
    if(RebindClickModal_show && typeof RebindClickModal_show === typeof Function) {
        RebindClickModal_show();
    }

    if(RebindClickModal_contact && typeof RebindClickModal_contact === typeof Function) {
        RebindClickModal_contact();
    }
}); 

答案 2 :(得分:1)

jQuery(document).ready(function() {
    ($.isFunction(window.RebindClickModal_show))?( RebindClickModal_show() ):( "" );
    ($.isFunction(window.RebindClickModal_contact))?( RebindClickModal_contact() ):( "" );
});

function RebindClickModal_show(){
    console.log("Show - Hello World!");
}
function RebindClickModal_contact(){
    console.log("Contact - Hello World!");
}