我正在开发一个web应用程序,并且在开发阶段我添加了一些脚本。javascript最佳实践和文档准备
我注意到脚本的数量很多,可能会增加。
我通常把一切封闭在的document.ready,并加载页面时执行。
有,设置一个元素的特定样式只有在类是存在于DOM特定脚本。
有没有办法运行的脚本只有在特定的元素在DOM树?
我正在开发一个web应用程序,并且在开发阶段我添加了一些脚本。javascript最佳实践和文档准备
我注意到脚本的数量很多,可能会增加。
我通常把一切封闭在的document.ready,并加载页面时执行。
有,设置一个元素的特定样式只有在类是存在于DOM特定脚本。
有没有办法运行的脚本只有在特定的元素在DOM树?
可以加载脚本(通过AJAX),或者当它的需要,通过检查jQuery对象的长度,以查看是否该元素存在运行代码。
if($(selector).length > 0){ // if element is in DOM
$.getScript('file.js'); // load file
// or just run some code
alert('element is here');
}
或者您可以检出yepnope.js
。
yepnope({
test: $(selector).length,
yep: 'file.js',
callback: function(url, result, key){
if(result){
alert('element is here');
}
}
});
要检查jQuery中是否存在元素,可以使用$(#myElement").length;
。当您的问题结合本有关在此基础上添加CSS,使用方法:
if ($("#myelement").length > 0) {
// element exists
$(this).addClass("exists");
$("#otherElement").css({
"display": "block",
"background-color": "#C00"
});
}
是啊,我觉得你可以这样做乌尔文件准备:
if ($('#yourElement').length){
$.getScript('ajax/yourjs.js', function(){
console.log('Load was performed.');
});
}