我有这样的场景:
<img class="prev" data-modal-img-src="asd"/>
<span></span>
<img class="next"/>
现在点击我想获取 .prev img 元素 src attr,我这样做了:
$(function(){
$('span').bind('click',function(){
var _img_src = $(this).prev('img').attr('data-modal-img-src');
alert(_img_src);
});
});
它没有按预期工作,有什么建议吗?
P.S: 不要像 rayining -1 一样使用 -1
最佳答案
要获得上一个,它们应该有共同的父级,可以通过 body
标记或 div
等,并且您没有属性 'data-modal-img- src'
。您应该使用on
而不是bind,因为bind 已被弃用。对于数据属性,还可以使用 data()
而不是 attr()
。
prev(), Get the immediately preceding sibling of each element in the set of matched elements, optionally filtered by a selector, jQuery documents.
<强> Live Demo
<img class="prev" data-modal-img-src = "123"/>
<span></span>
<img class="next"/>
$(function () {
$('span').bind('click', function () {
var _img_src = $(this).prev('img').data('modal-img-src');
alert(_img_src);
});
});
使用data()
<强> Live Demo
$(function () {
$('span').bind('click', function () {
var _img_src = $(this).prev('img').data('modal-img-src');
alert(_img_src);
});
});
关于javascript - JQuery无法获取上一张图片的src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14660310/