我正在构建一个水平滚动的网站并使用jquery serialscroll进行导航。我已经绑定了页面上的键盘箭头键(左右)和按钮,以使用div 标签滚动到下一个元素。效果很安静,但我想知道是否有办法为另一个脚本选择/调用当前元素/div?
基本上,我想绑定向上/向下箭头,第一次按下向下展开div,然后按(可能再次使用串行滚动)向上和向下滚动此div。
如果有人能帮助我解决这个问题,我将不胜感激。也许串行滚动或滚动是最好的插件,我欢迎任何替代方案。
当我在我的第一个网站上工作时,我可能会问很多问题,所以请耐心等待。我对jscript的了解是基本的,但我学得很快。提前谢谢。
代码示例:
$('#maincontent').serialScroll({
items:'#slide',
prev:'.leftArrow',
next:'.rightArrow',
offset:-220,
start:0,
duration:500,
force:false,
stop:true,
constant:false,
lock:false,
cycle:false,
easing:'easeOutQuart',
jump: true
});
只是一个更新,我能够通过更改代码来回答我的问题:
var $nav = $('#slideshow li');
$('#maincontent').serialScroll({
items:'li',
prev:'.leftArrow, div.logo#logo',
next:'.rightArrow',
offset:-220, //when scrolling to photo, stop 230 before reaching it (from the left)
start:0, //as we are centering it, start at the 2nd
duration:500,
force:false,
stop:true,
constant:false,
lock:false,
cycle:false, //don't pull back once you reach the end
easing:'easeOutQuart', //use this easing equation for a funny effect
jump: true, //click on the images to scroll to them
navigation:$nav,
onBefore:function(e,el,$p,$i,pos){
$nav.removeClass('newclass');
$nav.eq(pos).addClass('newclass')},
});
这允许向当前元素添加一个新类,我可以使用 jscript 相应地更改它。
我在上面的评论中添加了一个更新,帮助添加一个类并选择当前元素进行操作。
不能肯定地说,因为我看不到代码。我以前没有尝试过 serialscroll,但按照您描述的方式,我只会设置一些全局变量来包含当前的div。然后,通过outerHeight
获取对象的高度,以查看它是否已展开。
加一个小提琴,也许我可以帮上更多帮助。
onBefore: function (e, elem, $pane, $items, pos) {
$('.item').removeClass('active');
$('.item').eq(pos).addClass('active');
},