Javascript jQuery-$(';this';),循环还是数组?
我有一个片段,我正试图与之合作;我有一些产品,我正在获取源代码,在“?”处将其拆分,并将其放入数组中,然后用新链接替换“img.item img”src 但是,我并没有使用循环或$('this')来唯一地标识它们。例如,如果我有三个项,它们都得到第一个的src代码Javascript jQuery-$(';this';),循环还是数组?,javascript,jquery,Javascript,Jquery,我有一个片段,我正试图与之合作;我有一些产品,我正在获取源代码,在“?”处将其拆分,并将其放入数组中,然后用新链接替换“img.item img”src 但是,我并没有使用循环或$('this')来唯一地标识它们。例如,如果我有三个项,它们都得到第一个的src代码 <script> $( document ).ready(function() { $( "img.item-img" ).each(function() { str = $("img.item-img").at
<script>
$( document ).ready(function() {
$( "img.item-img" ).each(function() {
str = $("img.item-img").attr('src');
arr = str.split("?");
var new_link = arr[0];
$("img.item-img").attr('src', new_link);
});
</script>
$(文档).ready(函数(){
$(“img.item img”)。每个(函数(){
str=$(“img.item img”).attr('src');
arr=str.split(“?”);
var new_link=arr[0];
$(“img.item img”).attr('src',新链接);
});
正确识别后,需要使用
this
关键字作为$()
函数的单个参数:
$('img.item-img').each(function() {
var str = $(this).attr('src'),
arr = str.split("?");
$(this).attr('src', arr[0]);
});
$('img.item-img').attr('src', function() {
var arr = $(this).attr('src').split('?');
return arr[0];
});
或者,您可以在
attr()
函数中使用匿名函数调用:
$('img.item-img').each(function() {
var str = $(this).attr('src'),
arr = str.split("?");
$(this).attr('src', arr[0]);
});
$('img.item-img').attr('src', function() {
var arr = $(this).attr('src').split('?');
return arr[0];
});
(关于匿名函数返回)在每个回调函数中,需要使用$(this)来引用当前循环的元素
<script>
$( document ).ready(function() {
$( "img.item-img" ).each(function() {
str = $(this).attr('src');
arr = str.split("?");
var new_link = arr[0];
$(this).attr('src', new_link);
});
</script>
$(文档).ready(函数(){
$(“img.item img”)。每个(函数(){
str=$(this.attr('src');
arr=str.split(“?”);
var new_link=arr[0];
$(this.attr('src',新链接);
});
你的问题是什么?你的问题是什么?因为你说你不使用$(这个)
,但你为什么不使用?(这是我的问题…)非常感谢!我只是不知道如何正确地做。我还是很新鲜。但这很完美