2015-10-21 3 views
1

Итак, у меня есть следующий JS файл, который проверяет несколько функций:Если условие для функций

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

Однако если страница не имеет эти функции, то я получаю ссылочную ошибку.

Итак, я хочу добавить условие if, чтобы проверить, существуют ли эти функции в первую очередь.

Что было бы лучшим способом сделать это?

Спасибо.

ответ

2

попробуйте использовать isFunction так:

jQuery(document).ready(function() { 

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


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

}); 
+0

Благодаря прекрасно работает. =) –

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(); 
    } 
}); 
+0

Спасибо! Ценить это! :) –

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!"); 
} 
Смежные вопросы