仅当在页面上找到元素时才运行函数?
2014-10-08
58
仅在页面上找到元素时才能运行此代码?此功能在需要该功能的主页上运行良好;但是,在不需要函数的其他页面上,控制台会产生
无法读取属性。在页面上。
988501886
3个回答
if ($( "#music").length) {
//Element exists
}
Arsen Mkrtchyan
2014-10-08
$('.play').click(function( e ){
e.preventDefault();
var len = $("#music").length;
if(len){
//do something
}
});
roullie
2014-10-08
在访问元素之前,先找到元素的
length
。
尝试以下代码,它将在任何页面上工作。因为只有找到
#music
元素时它才会工作,否则它不会工作。
$('.play').click(function( e ){
e.preventDefault();
if($("#music").length > 0)
{
$('html, body').animate({
scrollTop: $("#music").offset().top - (
$(window).width() < 450 ? 112 : 60
)
}, 500);
$('.play').fadeOut(function() {
$('.music-home').fadeIn('slow');
});
}
});
Mayank Pathak
2014-10-08