我使用fullpage.js來創建wp站點,我想知道是否可以在用戶進入特定頁面時更改滾動方向。fullpage.js在滾動方向上更改滾動方向
更好地說明,讓我們用這個這個例子: http://alvarotrigo.com/fullPage/examples/navigationV.html
是否有可能當你訪問second slide滾動方向改變到水平?
因此,我不想單擊箭頭來水平導航,而是希望鼠標滾輪水平滾動。
這是可能與fullpage.js或我必須改變到另一個腳本?
我使用fullpage.js來創建wp站點,我想知道是否可以在用戶進入特定頁面時更改滾動方向。fullpage.js在滾動方向上更改滾動方向
更好地說明,讓我們用這個這個例子: http://alvarotrigo.com/fullPage/examples/navigationV.html
是否有可能當你訪問second slide滾動方向改變到水平?
因此,我不想單擊箭頭來水平導航,而是希望鼠標滾輪水平滾動。
這是可能與fullpage.js或我必須改變到另一個腳本?
好,這是基本的方法:
mousewheel
偵聽器:還有一些代碼可以防止幻燈片加載時發生的事情。
var currentSlide = 0;
var loaded = false;
$('#fullpage').fullpage({
navigation: true,
navigationTooltips: ['First section', 'Second section', 'Third section'],
sectionsColor: ['#f1c40f', '#e67e22', '#c0392b'],
loopHorizontal: false,
afterLoad: function (anchorLink, index){
loaded = true;
},
afterSlideLoad: function(anchorLink, index, slideAnchor, slideIndex){
currentSlide = slideIndex;
loaded = true;
},
onLeave: function(index, nextIndex, direction) {
loaded = false;
if (nextIndex == 2) {
$('#fullpage').on("mousewheel",function(e){
if(loaded){
loaded = false;
var delta = e.originalEvent.deltaY;
console.log(delta);
if(delta>0){ //down
if(currentSlide===2){//if last slide
$('#fullpage').off("mousewheel");
}else{
$.fn.fullpage.moveSlideRight();
e.preventDefault();
e.stopPropagation();
}
}else{ //up
if(currentSlide===0){//if first slide
$('#fullpage').off("mousewheel");
}else{
$.fn.fullpage.moveSlideLeft();
e.preventDefault();
e.stopPropagation();
}
}
}else{ //slide still loading, don't scroll
e.preventDefault();
e.stopPropagation();
}
});
}
}
});
這適用於Chrome。我不知道如何跨瀏覽器e.originalEvent.deltaY
位。您可以用this plugin替換鼠標滾輪處理程序,使其正確跨平臺。
這是一個完全跨平臺解決方案的JSFiddle with jquery.mousewheel。
我也很喜歡它^^,清晰,工作,出色的工作夥計。也許你應該做更動態的,比如加入'data-direction = horizontal'來確定哪一段必須水平滾動,並使用'$(「。section」+ currentSection +「.slide」).length'來獲得最大值,但這已經很難了;) – EdenSource 2015-03-31 16:00:40
@EdenSource是的,如果我在項目中使用它,我會的。但是這顯示瞭解決方案而沒有提供完整的代碼。這樣,任何使用它的人都必須理解它才能使其在項目中運行。 – slicedtoad 2015-03-31 16:03:48
在safari和firefox中無法正常工作:( – mattia 2015-04-01 11:21:32
我做了一些編輯以改善問題的清晰度。如果我有任何問題,請糾正或恢復編輯。 – slicedtoad 2015-03-31 14:30:40
現在可以通過fullpage.js擴展[Scroll Horizontally](http://alvarotrigo.com/fullPage/extensions/continuousHorizontal.html)進行操作。 – Alvaro 2016-09-01 10:36:55