我很难找到语法,甚至只是一个优雅的解决方案。
我想为旋转木马实现“当前观看”标签,用于预览其他图像。我将标签注入服务器的每张幻灯片,但是将它们设置为隐藏的类。
这是我的功能:
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());
答案 0 :(得分:1)
我相信你可以用逗号结合2和3。第一个我不确定如何实施。
$('#imageNav li > a, #carousel_slides span > a').click()