我很难找到语法,甚至只是一个优雅的解决方案。
我想为用于预览其他图像的轮播实现“当前查看”标签。我将标签从服务器注入每张幻灯片,但将它们设置为隐藏类。
这是我的功能:
var api = $('#imageNav').data('tabs');
var currentImageId = '#' + api.getCurrentPane().attr('id');
var $carousel = $('#carousel_slides');
$carousel.find('a > span').addClass('hidden')
.parentsUntil($carousel).find('a[href=\"' +
currentImageId + '\"] > span').removeClass('hidden');
我希望能够在 3 个不同的事件上运行该功能:
1. DocumentReady()
2. $('#imageNav li > a').click()
3. $('#carousel_slides span > a').click()
有没有办法将所有 3 与 .on() 结合起来,还是我必须为所有 3 单独设置它?
谢谢。
编辑- 我在我的 $(function () {}); 但没有运气。
var SetCurrentlyViewingLabel = function() {
var api = $('#imageNav').data('tabs');
var currentImageId = '#' + api.getCurrentPane().attr('id');
var $carousel = $('#carousel_slides');
$carousel.find('a > span').addClass('hidden')
.parentsUntil($carousel).find('a[href=\"' + currentImageId + '\"] > span')
.removeClass('hidden');
};
SetCurrentlyViewingLabel();
$('#imageNav li > a, #carousel_slides span > a').click(SetCurrentlyViewingLabel());