我需要實時啓用/禁用.js插件。當用戶重新調整他的瀏覽器窗口大小時,桌面版本變爲移動版。事情是我需要禁用一些JavaScript(fullpage.js)並添加一些CSS。 如果您重新加載頁面或在電腦上使用全屏窗口,從頭到尾都沒有問題。問題是:如何禁用寬度爲< 800的fullpage.js? 我已經試過這件事情:如何啓用/禁用(實時)網頁上的JavaScript插件?
添加此功能體onresize
事件(無需重新加載沒有結果):
function checkWidth() {
if($(window).width() <= 760){
$('#menu-header-button').click(function(){
$('#navigation').toggleClass('navbar-v');
$('#logo-mobile').toggleClass('visible');
$('#menu-header-button').addClass('disabled');
setTimeout(function(){
$('#menu-header-button').removeClass('disabled');
}, 500);
});
} else if($(window).width() > 760){
$('#fullpage').fullpage({
menu: '#menu',
anchors: ['firstPage', 'secondPage', '3rdPage', '4thPage'],
css3: true,
afterLoad: function(anchorLink, index){
if(anchorLink == 'firstPage'){
$('#navigation').removeClass('navbar-v');
}
},
onLeave: function(index, nextIndex, direction){
setTimeout(function(){
$('#navigation').addClass('navbar-v');
}, 500);
}
});
}
}
這是工作只是偶爾:
$(window).onresize= checkWidth();
function checkWidth() {
if($(window).width() == 761){
location.reload(true);
}
//...
}
這是不工作:
$(window).onresize= checkWidth();
function delayCheckWidth(){
setTimeout(function(){
checkWidth();
}, 50); //I thought some delay time can be useful here
}
function checkWidth() {
if($(window).width() == 761){
location.reload(true);
}
//...
}
相關主題我檢查了:
- Throttling
- How to disable/Enable plugins?
- Enable/Disable JavaScript code
- How to disable/Enable plugins?
- Enable and disable jquery knob dynamically
- Disable and enable jQuery context menu
- 很多人。
沒有關於實時或沒有什麼有趣/有幫助。
你有什麼建議嗎?也許我不需要這樣做呢?
我相信,所有你建議我的東西都是有用的。就目前而言,我可以說,嘗試了一切,但解決方案。 當我添加'響應',重新大小後大尺寸fullpage停止工作。 當我添加'摧毀'它停止工作,我在哪裏摧毀它。 當'autoScrolling'出現與第一種情況相同的問題時。 我可以向你展示網站嗎? (發送私密鏈接。) – Animus 2014-12-07 18:02:56
你甚至不知道你幫了我多少! 謝謝! – Animus 2014-12-07 18:22:42
你能解釋一下我如何讓1個部分比別人更大?我需要部分高到足以包含我的數據。但他們是固定的高度 - 作爲一個屏幕。 – Animus 2014-12-07 19:53:39