最简单的方法是将函数附加到[onload,在一组元素上单击,在另一组元素上单击]?

时间:2013-06-14 13:41:14

标签: jquery

我很难找到语法,甚至只是一个优雅的解决方案。

我想为旋转木马实现“当前观看”标签,用于预览其他图像。我将标签注入服务器的每张幻灯片,但是将它们设置为隐藏的类。

这是我的功能:

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());

1 个答案:

答案 0 :(得分:1)

我相信你可以用逗号结合2和3。第一个我不确定如何实施。

$('#imageNav li > a, #carousel_slides span > a').click()