我试图从下面的链接获取 data-shareurl 以便在jQuery中使用,但出于某种原因,当我将变量放入警报时,它总是未定义的。有人能告诉我我的错吗?谢谢。 我做了一个小提琴here
HTML
<a title="" class="fancybox" data-shareurl="www.google.com" href="http://fancyapps.com/fancybox/demo/1_b.jpg">
<img src="http://fancyapps.com/fancybox/demo/1_b.jpg" title="" /></a>
的jQuery
var shareurl = $(this).attr('data-shareurl'); //Get this url
$(".fancybox").fancybox({
beforeShow: function() {
this.title = '<div class="addthis addthis_toolbox addthis_default_style "><a href="' + this.href + '" addthis:url="' + this.href + '" addthis:title="' + this.title + '" class="addthis_button_preferred_1"></a></div>';
alert(shareurl); //see the variable
},
afterShow: function() {
addthis.toolbox(
$(".addthis").get()
);
},
helpers: {
title: {
type: 'inside'
}
}
});
答案 0 :(得分:1)
您正在使用$('.fancybox')...
作为选择器。我假设此代码不在函数id
为什么不使用class
或var shareurl = $('.fancybox').attr('data-shareurl'); //Get this url
作为选择器。
networks.txt
答案 1 :(得分:1)
您可以使用解决方案
$('a').click(function(){
console.log($(this).data('shareurl'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a title="" class="fancybox" data-shareurl="www.google.com" href="http://fancyapps.com/fancybox/demo/1_b.jpg">
<img src="http://fancyapps.com/fancybox/demo/1_b.jpg" title="" /></a>
希望这会对你有所帮助。