我遇到了jquery语法查找相同元素但编写方式不同的问题。
for (var i = 0; i < _max ; i++) {
var _carouselCell = "<div class=\"carousel-cell\"><div class=\"item 1\" id=\ itm \ " + i + "\"></div></div>";
$('.main-carousel').append( _carouselCell );
$('#itm' + i).html('<img class="item-img" src="' + _url + '' + i + '.jpg"><img>');}
导致我出现问题的是 var_carouselCell &gt; id = \ itm \&#34; + i +&#34; 这将成为 $(&#39;#itm&#39; + i)下的选择器 但我意识到我的选择器语法与此 id = \ itm \&#34;不匹配+ i +&#34;
我的目的只是追加div id = itm i ,然后选择它来加载img。
答案 0 :(得分:0)
您不会在ID的开头添加引号,这可能是问题所在。这也将使其更具可读性:
var _carouselCell = "<div class='carousel-cell'>"
+ "<div class='item 1' id='itm" + i + "'>"
+ "</div>"
+ "</div>";
小心class="item 1"
。这是应用两个不同的类(item
和1
)而不是item1
。
答案 1 :(得分:0)
depending on what browsers you need to support you could also use String interpolation / Template Literals
browser support: https://caniuse.com/#feat=template-literals
时,引导模式无法正确显示for (var i = 0; i < _max ; i++) {
var _carouselCell = `
<div class="carousel-cell">
<div class="item 1" id="itm${i}" ></div>
</div>`;
$('.main-carousel').append( _carouselCell );
$('#itm' + i).html(`<img class="item-img" src="${_url}${i}.jpg"><img>`);
}
答案 2 :(得分:0)
您在id
开头时没有使用双引号。尝试修复它。
否则
这应该解决你的目的,使用singleQuote而不是double。
var _carouselCell = "<div class= 'carousel-cell'><div class= 'item 1' id='itm " + i + "'></div></div>";
答案 3 :(得分:0)
班级名称不应以数字开头。在-
之间提供_
或item 1
。
您可以使用单引号和双引号的混合。
var _carouselCell = '<div class="carousel-cell"><div class="item_1" id="itm'+i+'">'+i+'</div></div>';