首先,我是javascript的新手,所以这个问题可能很愚蠢。 我有一个要求,我会向其他网站提供一个js脚本,以包含在他们的网页中。
现在我的问题是我应该使用jquery还是普通的javascript.Will /可以jquery影响网站的其余功能。 另外,使用jquery而不是简单的javascript,我将获得什么好处。
我的要求是获取网站的所有图像,并对这些网站上的图像进行处理。
先谢谢。
答案 0 :(得分:2)
我想说,如果处理不涉及jQuery,那么就不要使用它。
如果包含以下问题,您需要处理以下问题
所有问题都有解决方法/解决方案,但您必须实现每个问题的每一个。
如果您只需要查找页面中的所有图片,则可以使用.getElementsByTagName()
方法
var imagelist = document.getElementsByTagName('img');
然后就此进行处理..
您可能需要在load
事件中附加代码,以确保无论您的代码是什么,DOM都可以接受它。
适用于.addEventListener()
的现代浏览器,而对于IE,则为.attchEvent()
你的脚本可能是这样的
(function(){ // wrap in a self-invoking function to avoid global name-space pollution
// attach to the load event so out code runs once the page has loaded
if (window.addEventListener) { // modern
window.addEventListener('load', imageProcessor, false);
}
else if (window.attachEvent) { // IE
window.attachEvent('onload', imageProcessor );
}
function imageProcessor(){
// get all images
var imagelist = document.getElementsByTagName('img');
// loop the list of images to do something with each image
for (var img = 0; img < imagelist.length; img++)
{
var currentImage = imagelist[img];
// do processing on the currentImage which hold a reference to the image
}
}
})(); // do the self-invoking
答案 1 :(得分:1)
使用jQuery会更容易实现,主要是因为您希望能够将脚本分发到任何浏览器(而jQuery是一个跨浏览器库),但它确实有它的缺点。 如果它是您自己的项目,您自己的页面,您确切地知道加载/执行的内容和时间,但如果您将脚本提供给其他人,则必须至少考虑3个问题:
noConflict
方法解决,但我发现它在某些情况下失败了考虑到起起落落,这实际上取决于你在做什么,所以,正如Gaby aka G. Petrioli所说,“如果处理不涉及jQuery,那么就不要使用它。”
答案 2 :(得分:0)
JQuery比普通的javascript更方便。您不必担心跨浏览器兼容性(例如IE与Firefox与Chrome)。除非你想自己处理,否则我会建议使用javascript:)
您可以加载Jquery库,但这可能比您要查找的要重一点。此外,您需要从服务器获取库,这会增加另一个故障点(但是,如果您在自己的服务器上托管它,那么您将拥有更多控制权。)
TLDR:JQuery很方便。如果您有权访问它,那么您应该使用它。