我正在使用我页面上的水平尾声滑块来显示精选内容,而且它的工作正常。我遇到的唯一问题是当我点击页面上链接到id的任何其他链接(例如<a href="#top">Top</a>
)时,它会导致滑块动画。
您可以看到此here的示例 - 单击其中一个coda滑块导航选项卡,然后尝试单击右侧边栏中的“callcredit news”或“press association”链接,或者单击主体副本中的'ipsum dolor'链接。
用户名:演示 密码:演示
任何人都知道为什么会这样做? jQuery如下:
//CODA SLIDER
if ($('div#slider').length) {
var $panels = $('#slider .scrollContainer > div');
var $container = $('#slider .scrollContainer');
var horizontal = true;
if (horizontal) {
$panels.css({
'float' : 'left',
'position' : 'relative'
});
$container.css('width', $panels[0].offsetWidth * $panels.length);
}
var $scroll = $('#slider .scroll').css('overflow', 'hidden');
function selectNav() {
$(this)
.parents('#slider ul.navigation:first')
.find('a')
.removeClass('selected')
.end()
.end()
.addClass('selected');
}
$('#slider .navigation').find('a').click(selectNav);
function trigger(data) {
var el = $('#slider .navigation').find('a[href$="' + data.id + '"]').get(0);
selectNav.call(el);
}
if (window.location.hash == 'plan') {
trigger({ id : window.location.hash.substr(1) });
} else {
$('#slider ul.navigation a:first').click();
}
var offset = parseInt((horizontal ?
$container.css('paddingTop') :
$container.css('paddingLeft'))
|| 0) * -1;
var scrollOptions = {
target: $scroll,
items: $panels,
navigation: '#slider ul.navigation a',
axis: 'xy',
onAfter: trigger,
offset: offset,
duration: 800,
easing: 'swing'
};
$('#slider').serialScroll(scrollOptions);
$.localScroll(scrollOptions);
scrollOptions.duration = 1;
$.localScroll.hash(scrollOptions);
var $buttons = $('img.right').add('img.left').hide();
cycleTimer = setInterval(function () {
$scroll.trigger('next');
}, 10000);
var $stopTriggers = $('#slider .navigation').find('a')
.add('.scroll')
.add('.stopscroll')
.add('.navigation')
.add("a[href^='#']");
function stopCycle() {
clearInterval(cycleTimer);
}
$stopTriggers.bind('click.cycle', stopCycle);
var $startTriggers_start = $('#slider .navigation').find('a')
.add('.startscroll');
function startCycle() {
$buttons.hide();
$scroll.trigger('next');
cycleTimer = setInterval(function () {
$scroll.trigger('next');
}, 5000);
}
$startTriggers_start.bind('click.cycle', startCycle);
}
//END CODA SLIDER