JQuery 禁用单页滚动功能
JQuery disable onepage scroll in function
在项目中我使用 jquery.onepage.scroll 插件。但是当我打开模式 window 并滚动然后页面也向后滚动时。我在插件的源文件中找到了 2 个地方:
1)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (t) {
t.preventDefault();
var n = t.originalEvent.wheelDelta || -t.originalEvent.detail;
if (!e('body').hasClass('disabled-onepage-scroll')) u(t, n);
});
2)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (e) {
e.preventDefault();
var t = e.originalEvent.wheelDelta || -e.originalEvent.detail;
u(e, t);
});
如果我这样评论,那么滚动就被禁用了,但是我怎样才能使用另一个文件中的函数来禁用它呢?例如,我有一个用于打开模式 window 的事件侦听器,当它打开时 -> 滚动被禁用
myModalEl.addEventListener('shown.bs.modal', function (event) {
disableOnepageScroll();
});
myModalEl.addEventListener('hidden.bs.modal', function (event) {
disableOnepageScroll();
});
所以,我只是添加了 if 语句来验证 body 是否有 'modal-open' class 名称。
1)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (e) {
e.preventDefault();
var t = e.originalEvent.wheelDelta || -e.originalEvent.detail;
if (!$(document.body).hasClass('modal-opened')) {
u(e, t);
}
});
2)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (t) {
t.preventDefault();
var n = t.originalEvent.wheelDelta || -t.originalEvent.detail;
if (!$(document.body).hasClass('modal-open')) {
console.log('AAAAA');
if (!e('body').hasClass('disabled-onepage-scroll')) u(t, n);
}
});
在项目中我使用 jquery.onepage.scroll 插件。但是当我打开模式 window 并滚动然后页面也向后滚动时。我在插件的源文件中找到了 2 个地方:
1)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (t) {
t.preventDefault();
var n = t.originalEvent.wheelDelta || -t.originalEvent.detail;
if (!e('body').hasClass('disabled-onepage-scroll')) u(t, n);
});
2)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (e) {
e.preventDefault();
var t = e.originalEvent.wheelDelta || -e.originalEvent.detail;
u(e, t);
});
如果我这样评论,那么滚动就被禁用了,但是我怎样才能使用另一个文件中的函数来禁用它呢?例如,我有一个用于打开模式 window 的事件侦听器,当它打开时 -> 滚动被禁用
myModalEl.addEventListener('shown.bs.modal', function (event) {
disableOnepageScroll();
});
myModalEl.addEventListener('hidden.bs.modal', function (event) {
disableOnepageScroll();
});
所以,我只是添加了 if 语句来验证 body 是否有 'modal-open' class 名称。
1)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (e) {
e.preventDefault();
var t = e.originalEvent.wheelDelta || -e.originalEvent.detail;
if (!$(document.body).hasClass('modal-opened')) {
u(e, t);
}
});
2)
e(document).bind('mousewheel DOMMouseScroll MozMousePixelScroll', function (t) {
t.preventDefault();
var n = t.originalEvent.wheelDelta || -t.originalEvent.detail;
if (!$(document.body).hasClass('modal-open')) {
console.log('AAAAA');
if (!e('body').hasClass('disabled-onepage-scroll')) u(t, n);
}
});