Javascript 如何同时运行脚本';有载';和';在调整大小';(在特定窗口宽度上!)在jQuery中?
在我当前的网站项目中,我已经集成了它,但由于它在移动设备上的行为非常罕见(也是由于我的项目的设计要求),我决定在视口宽度低于768px时关闭它。为此,我只需在脚本中添加一个简单的if语句:Javascript 如何同时运行脚本';有载';和';在调整大小';(在特定窗口宽度上!)在jQuery中?,javascript,jquery,Javascript,Jquery,在我当前的网站项目中,我已经集成了它,但由于它在移动设备上的行为非常罕见(也是由于我的项目的设计要求),我决定在视口宽度低于768px时关闭它。为此,我只需在脚本中添加一个简单的if语句: $(document).ready(function(){ if ($(window).width() > 768 ) { $('#fullpage').fullpage({ // code... code... code... }); } }); 问题是它只在刷新页面后
$(document).ready(function(){
if ($(window).width() > 768 ) {
$('#fullpage').fullpage({
// code... code... code...
});
}
});
问题是它只在刷新页面后生效;因此,当我在768px以下重新加载页面时,插件被关闭,但当我在上述断点上方调整浏览器大小时,它仍然关闭(反之亦然)。我想我应该添加一些处理resize的代码,但不幸的是,我目前对JS/jQ的了解不允许我这么做。
提前感谢您的时间。这应该可以:
$(window).resize(function(){
if ($(window).width() > 768 ) {
//do your thing here
}
}
使用$(document).resize(function(){/*do stuff*/})
。
然后可以在
onload
上使用$(document).trigger('resize')您可以使用jQueryresize
事件。看
把你的代码,你想做的事情放到一个函数中。使用$(function(){})在文档就绪
上调用该函数代码>,以及调整窗口大小时
$(function () {
function doSomething() {
$('#fullpage').fullpage({
//The code
});
}
$(window).resize(function () {
//Do it on resize
if ($(window).width() > 768) {
doSomething();
}
});
//Do it when page loads.
doSomething();
});
下面是如何在激发DOM ready
和在激发调整大小时运行匿名函数:
$(document).ready(function() {
$(window).on('resize', function() {
//code to run
})
.trigger('resize');
});
谢谢你的回复,我实际上已经试过了,问题是如果我这样做,插件永远不会加载。调整大小事件可以调用很多次。在每次调用时,如果达到条件,您将初始化插件$(窗口)。width()
检查视口宽度是一个坏习惯,请改用窗口。matchMedia
:这里是polyfill以支持旧浏览器: