当用户点击div
标记时,我想在var id
中存储相应的current
值,以便稍后可以使用它来迭代到该索引,并且这样div就可以显示和隐藏了。
HTML
<div class="gallerypreview" id="1"></div>
<div class="gallerypreview" id="2"></div>
<div class="gallerypreview" id="3"></div>
JS
var images = new Array();
$(document).ready( function(){
$('.gallerypreview').each(function() {
images.push($(this).attr("id"));
});
$('.gallerypreview').click(function() {
var current = $('.gallerypreview').index(this);
});
});
如何从这个点击的div中检索div id
?我可以获得索引号,但我无法使用任何使用索引#的函数找到索引的值。
答案 0 :(得分:0)
这是你在找什么?
$('.gallerypreview').click(function() {
var current = $(this).attr("id");
});
单击回调函数$(this)
内部引用了单击的特定DOM对象。因此,一个简单的.attr("id")
将获得所点击的div的id(存储在变量current
中)。
希望有所帮助
答案 1 :(得分:0)
var images = new Array();
$(function() {
$('.gallerypreview').each(function() {
images.push($(this).attr("id"));
});
var current = null;
$('.gallerypreview').click(function() {
current = $(this).attr('id');
});
});
答案 2 :(得分:0)
解决点击问题,并将ID更改为有效的HTML / CSS ID(stackoverflow.com/a/79022/1418261)。
JS
var images = new Array();
$(document).ready( function(){
$('.gallerypreview').each(function() {
images.push($(this).attr("id"));
});
$('.gallerypreview').click(function() {
var current = $('.gallerypreview').index(this);
alert(current.attr("id"));
});
});
HTML
<div class="gallerypreview" id="one">1</div>
<div class="gallerypreview" id="two">2</div>
<div class="gallerypreview" id="three">3</div>
答案 3 :(得分:0)
根据变量current
的范围,适当地声明它:
var images = new Array(), current;
然后更改以下内容:
$('.gallerypreview').click(function() {
var current = $('.gallerypreview').index(this);
});
致:
$('.gallerypreview').on('click', function() {
current = this.id;
});