[英]How to choose each element from an array in their respective order? (jquery, JS)
[英]jquery choose every element from array
我不知道如何实现它,我几个小时以来一直在寻找方法来做到这一点,但没有任何成功。
假设我有这个代码:
var vara="bing.com";
var varb="google.com";
jQuery('a[href^="http://'+vara+'"],a[href^="https://'+vara+'"]').click(function() {alert('y'); });
jQuery('a[href^="http://'+varb+'"],a[href^="https://'+varb+'"]').click(function() {alert('y'); });
我需要在这里实现的是使用一个调用来为每个数组变量设置 .click 函数:
var varall=["bing.com","google.com"];
jQuery('a[href^="http://'+varall+'"],a[href^="https://'+varall+'"]').click(function() {alert('y'); });
但这不起作用。 如何使变量“varall”从数组中获取每个元素,以便第二个脚本可以作为第一个脚本工作?
Evan Trimboli 的回答是好的,但是......在这种情况下,这个选择器 sintaxis 不是很好。 因为,据我所知,当 jQuery 将事件添加到<a>
它会拆分一个字符串并循环每个元素(再次)。 所以我们得到了双重循环。
我认为最好的选择是做这样的事情:
var varall=["bing.com","google.com"];
varall.forEach(function(item, i, arr) {
$(document).on('click', 'a[href^="http://' + item + '"], a[href^="https://' + item + '"]', function() {
alert('y');
});
});
看起来你想要这样做
var varall=["bing.com","google.com"];
$.each(varall, function(index, value){
jQuery('a[href^="http://'+value+'"],a[href^="https://'+value+'"]').click(function() {alert('y'); });
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.