我已经看到在stackoverflow上的其他问题中看起来可能是这个问题的解决方案,但是其中没有一个有效。
我正在尝试获取被点击以打开Fancybox的链接的innertext:
$(“a.turnDateLink”)。each(function(){
var that = $(this); $( "a.turnDateLink" ).fancybox({ 'type': 'modal', 'onComplete': function() { var currentday = $(that).text(); console.log(currentday); }, 'afterClose': clearCurrentDay, 'fullScreen' : false });
});
它只返回上一个a.turnDateLink.
每个时间的innerText!啊。
请记住,我想使用fancybox分组。
请参阅Fancybox文档以了解分组:http://fancyapps.com/fancybox/3/docs/#usage
如果您有一组项目,则可以使用相同的属性 data-fancybox值为每个人创建一个图库。每组 应该有一个独特的价值:
答案 0 :(得分:2)
查看有关活动的文档 - http://fancyapps.com/fancybox/3/docs/#events
第一个examaple包含有用的提示,包括如何找到点击的元素:
onComplete: function( instance, slide ) {
// Tip: Each event passes useful information within the event object:
// Object containing references to interface elements
// (background, buttons, caption, etc)
// console.info( instance.$refs );
// Current slide options
// console.info( slide.opts );
// Clicked element
// console.info( slide.opts.$orig );
// Reference to DOM element of the slide
// console.info( slide.$slide );
}
答案 1 :(得分:0)
请尝试这样做。将$( "a.turnDateLink" )
更改为that
。
$("a.turnDateLink").each(function() {
var that = $(this);
that.fancybox({
'type': 'modal',
'onComplete': function() {
$("#currentday").html('');
var currentday = that.text();
console.log(currentday);
},
'afterClose': clearCurrentDay,
'fullScreen' : false
});
});