我正在使用jQuery为元素分配函数。在PC和Android操作系统上,即使元素不存在,jquery也会通过,并且它根本不会为这些项目分配函数。
然而,在safari mobile上(不确定pc - 我无法访问它),如果元素不存在,它会破坏代码,并且代码行之后的所有内容都不会执行。下面是我的设置功能的一个片段,它在页面加载时执行。 $ register_button不存在。在检查这些元素的长度时,它不应该通过并导致任何麻烦。然而它确实如上所述,在此之后没有任何内容被执行和分配。
谢谢
$(function(){
$menu = $(".menu_button");
$logout = $(".logout");
$register = $("#registration > ul li");
$register_button = $(".registration");
if($menu.length > 0){
$menu.on('click', show_menu);
}
if($logout.length > 0){
$logout.on('click', logout);
}
if($register_button.length > 0){
$register_button.on('click', register);
}
if($register.length > 0){
$register.on('click', show_form);
}
});