Javascript JQuery:image src变量清理
在过去的几天里,我一直在教自己如何使用jquery,并没有太多地使用它,我仍然停留在旧的方式(回到10年前的lol)开始我下载了jquery桌面,以避免重复使用图像src链接不可避免地使文件比需要的大。所以,在制作参考变量时,基本上开始再次使用相同的东西。。。我试着抬头看看如何压缩它或清理一些,但我一直在为我正在尝试做的事情陷入死胡同。。。如果有人碰巧知道我能做什么,那就太棒了 代码Javascript JQuery:image src变量清理,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,在过去的几天里,我一直在教自己如何使用jquery,并没有太多地使用它,我仍然停留在旧的方式(回到10年前的lol)开始我下载了jquery桌面,以避免重复使用图像src链接不可避免地使文件比需要的大。所以,在制作参考变量时,基本上开始再次使用相同的东西。。。我试着抬头看看如何压缩它或清理一些,但我一直在为我正在尝试做的事情陷入死胡同。。。如果有人碰巧知道我能做什么,那就太棒了 代码 enter code here /* SAVES DATA SPACE ALSO CR
enter code here
/* SAVES DATA SPACE ALSO CREATES QUICK REFFERENCE/VARIABLE */
var healthVar= 'assets/img/icons/health.png';
var emailVar = 'assets/img/icons/email.png';
var linkVar = 'assets/img/icons/link.png';
var noteVar = 'assets/img/icons/note2.png';
var videoVar = 'assets/img/icons/video1.png';
var xxxVar = 'assets/img/icons/xxx.png';
var socialVar = 'assets/img/icons/social.png';
var webdesktopVar = 'assets/img/icons/webdesktop.png';
var androidVar = 'assets/img/icons/android.png';
var devVar = 'assets/img/icons/development.png';
var secureVar = 'assets/img/icons/secure.png';
var signalVar = 'assets/img/icons/signal.png';
var setVar = 'assets/img/icons/settings.png';
var spamVar = 'assets/img/icons/spam.png';
var feedbackVar = 'assets/img/icons/feedback.png';
$("#health_Pic").attr("src", healthVar);$("#health_PicB").attr("src", healthVar);$("#health_PicC").attr("src", healthVar);
$("#email_Pic").attr("src", emailVar);$("#email_PicB").attr("src", emailVar);$("#email_PicC").attr("src", emailVar);
$("#link_Pic").attr("src", linkVar);$("#link_PicB").attr("src", linkVar);$("#link_PicC").attr("src", linkVar);
$("#note_Pic").attr("src", noteVar);$("#note_PicB").attr("src", noteVar);$("#note_PicC").attr("src", noteVar);
$("#video_Pic").attr("src", videoVar);$("#video_PicB").attr("src", videoVar);$("#video_PicC").attr("src", videoVar);
$("#social_Pic").attr("src",socialVar);$("#social_PicB").attr("src", socialVar);$("#social_PicC").attr("src", socialVar);
$("#webdesktop_Pic").attr("src",webdesktopVar);$("#webdesktop_PicB").attr("src",webdesktopVar);$("#webdesktop_PicC").attr("src",webdesktopVar);
$("#android_Pic").attr("src",androidVar);$("#android_PicB").attr("src",androidVar);$("#android_PicC").attr("src",androidVar);
$("#dev_Pic").attr("src",devVar);$("#dev_PicB").attr("src",devVar);$("#dev_PicC").attr("src",devVar);
$("#secure_Pic").attr("src",secureVar);$("#secure_PicB").attr("src", secureVar);$("#secure_PicC").attr("src", secureVar);
$("#signal_Pic").attr("src", signalVar);$("#signal_PicB").attr("src", signalVar);$("#signal_PicC").attr("src", signalVar);
$("#settings_Pic").attr("src", setVar);$("#settings_PicB").attr("src", setVar);$("#settings_PicC").attr("src", setVar);
$("#spam_Pic").attr("src",spamVar);$("#spam_PicB").attr("src", spamVar);$("#spam_PicC").attr("src", spamVar);
$("#feedback_Pic").attr("src", feedbackVar);$("#feedback_PicB").attr("src", feedbackVar);$("#feedback_PicC").attr("src", feedbackVar)
我尝试过这样做:
$("#health_Pic","#health_PicB","#health_PicC").attr("src", healthVar);
幸运的是,感谢您提供的所有信息,jQuery attr函数只获取选择器获得的第一个元素
Get the value of an attribute for the
first element in the set of matched elements.
使用循环更改多个图像src
编辑:在检查文档并亲自尝试之后,我发现使用.attr作为setter确实为所有元素设置了值。感谢j08691指出这一点。jQuery attr函数只接受选择器获得的第一个元素
Get the value of an attribute for the
first element in the set of matched elements.
使用循环更改多个图像src
编辑:在检查文档并亲自尝试之后,我发现使用.attr作为setter确实为所有元素设置了值。感谢j08691指出这一点。试试:
$("#health_Pic,#health_PicB,#health_PicC").attr("src", healthVar);
尝试:
啊,这就解释了我为什么要做A-B-C等等。。如果我试着通读这些文件,我会花上几个小时翻找所有这些文件,以获得旁敲侧击等等。。但是非常感谢,我甚至没有想到使用a循环,你读错了解释。这意味着,如果使用类似于
$('div').attr('src',healthVar)
的代码,那么只有jQuery找到的第一个div才会更改src属性,而不是只更改一个项。在jQuery中,您始终可以传递多个元素作为选择器的一部分。好的,就像在div1中,您有4个图像div2有6个图像一样<代码>$('div1')。attr('src',healthVar)只会更改div1中的图像,对吗?(感谢您花时间为我解释,我非常感谢)@acrichm-首先不,$('div1')
不会选择任何内容,因为div1不是元素。如果div1是元素的ID,那么您可以使用$(“#div1”)
选择它(注意#)。但是,即使您选择了ID为div1的元素,您仍然需要选择其中的图像,如$('#div1 img')
。但是那只会改变在该分区中找到的第一个img。要选择您要使用的每个图像。each(),比如$('#div1 img')。each(function(){$(this.attr('src',something)})
。我正在考虑它,我现在明白你的意思了。。我要去看一下那些完全(有希望)理解的文档,再次感谢,尽管你为我提供了很多帮助和信息,这解释了我为什么要做A-B-C等等。。如果我试着通读这些文件,我会花上几个小时翻找所有这些文件,以获得旁敲侧击等等。。但是非常感谢,我甚至没有想到使用a循环,你读错了解释。这意味着,如果使用类似于$('div').attr('src',healthVar)
的代码,那么只有jQuery找到的第一个div才会更改src属性,而不是只更改一个项。在jQuery中,您始终可以传递多个元素作为选择器的一部分。好的,就像在div1中,您有4个图像div2有6个图像一样<代码>$('div1')。attr('src',healthVar)只会更改div1中的图像,对吗?(感谢您花时间为我解释,我非常感谢)@acrichm-首先不,$('div1')
不会选择任何内容,因为div1不是元素。如果div1是元素的ID,那么您可以使用$(“#div1”)
选择它(注意#)。但是,即使您选择了ID为div1的元素,您仍然需要选择其中的图像,如$('#div1 img')
。但是那只会改变在该分区中找到的第一个img。要选择您要使用的每个图像。each(),比如$('#div1 img')。each(function(){$(this.attr('src',something)})
。我正在考虑它,我现在明白你的意思了。。我要去看一下文档中关于那些能够完全(满怀希望地)理解这一切的内容。哈哈,再次感谢你,尽管你为梅洛提供了很多帮助和信息,但一些如此简单的事情总是让我和prob感到困惑。其他人也。。谢谢,没问题,很高兴我能帮你把这件事弄清楚。哈哈,这么简单的事情总是让我难堪。其他人也。。谢谢,没问题,很高兴我能帮你解决这个问题。