在jquery中更改图像的数据标题
嗨,朋友们,我正在尝试在动态模式下更改a的数据标题在jquery中更改图像的数据标题,jquery,fancybox,Jquery,Fancybox,嗨,朋友们,我正在尝试在动态模式下更改a的数据标题 $("#btnchange").click(function(){ var newanchor= $(".fancybox a"); newanchor.attr('caption', 'i am new caption'); }); 当我点击图片在第三方插件(名为(fancybox)的工具中打开它时,它的标题没有显示出来 但当我尝试在默认情况下添加数据标题时,它如下所示: <a id='a1' class="fanc
$("#btnchange").click(function(){
var newanchor= $(".fancybox a");
newanchor.attr('caption', 'i am new caption');
});
当我点击图片在第三方插件(名为(fancybox)的工具中打开它时,它的标题没有显示出来
但当我尝试在默认情况下添加数据标题时,它如下所示:
<a id='a1' class="fancybox" data-caption='hey'
href="http://farm8.staticflickr.com/7171/6417719753_374653e28c_b.jpg">
<img src="http://farm8.staticflickr.com/7171/6417719753_374653e28c_m.jpg" alt=""/>
</a>
然后它就完美地展现出来了。看我的小提琴:
尝试使用.data()
而不是.attr()
而且你的选择器应该是
。fancybox
而不是。fancybox a
你有错误的选择器,你当前的选择器将检查类fancybox
中的锚。所以像这样更改代码
$("#btnchange").click(function () {
$("a.fancybox").attr("data-caption", "i am new caption");
});
更改为数据效果很好……但我只看到了这么多通过关键字“attr”更改数据属性的示例,这就是为什么我尝试wid dat
newanchor.attr('caption'
不等于newanchor.attr('data-caption'
这就是代码失败的原因。@user3860465存在另一个问题选择器有问题too@user3860465如果您觉得此处提供的任何答案满足您的需要,请尝试单击该答案的勾号,以便向未来的访问者表示您的接受……这不是强迫……)attr不工作…根据我们可以看到的答案..它是'data'@user3860465“attr不工作”。你怎么能说它不工作?它工作正常。@AnoopJoshi:OP的意思是你可以使用attr()
方法设置新的数据标题
属性,但不更改现有属性。如果是第二个属性,则应使用Raja@JFK建议的.data(key,value)
格式。您可以检查此fiddle吗?。此处使用.attr()更改值 method@AnoopJoshi:嗯,你是对的,它确实发生了变化。然而,问题是fancybox的标题
除非你使用。数据(键、值)
。这里有一个关于这个主题的有趣讨论
$("#btnchange").click(function () {
$("a.fancybox").attr("data-caption", "i am new caption");
});
$(document).on('click', '#btnchange', function() {
$('a.fancybox').data('caption', 'i am new caption');
});