我的脚本几乎达到我想要的100%,但是当窗口重新调整大小超过865px时,我无法让它停止闪烁。
我基本上构建了当窗口超过一定大小时,它会将我的网站样式从手机更改为桌面。在大多数情况下,我使用本网站上提出的令人敬畏的其他问题来构建它,但我无法完成它。
JavaScript的:
$(window).on("resize", function() {
if ($(this).width() > 865) {
if (x != 'Desktop') {
var x = 'Desktop';
$('head link[rel=stylesheet]').remove();
$('head').append('<link rel="stylesheet" href="/IIS/_Stylesheets/HTMLPageReset.css" type="text/css" />');
$('head').append('<link rel="stylesheet" href="/IIS/GRCAWebsite/_Stylesheets/GRCANew2015.css" type="text/css" />');
}
}
if ($(this).width() < 865) {
if (x != 'Mobile') {
var x = 'Mobile';
$('head link[rel=stylesheet]').remove();
$('head').append('<link rel="stylesheet" href="/IIS/_Stylesheets/HTMLPageReset.css" type="text/css" />');
$('head').append('<link rel="stylesheet" href="/IIS/GRCAWebsite/_Stylesheets/GRCANew2015_Mobile.css" type="text/css" />');
}
}
});
它在移动视图中运行良好,但在桌面视图中,只要重新调整窗口大小,页面就会不断重新加载脚本。我认为它与我的 x 变量有关,但是
我也称JQuery。
答案 0 :(得分:2)
好吧,因为你告诉浏览器在865px以下和865px以上的其他地方做一些事情,你的问题很可能是你忘记了孤独的865px本身。尝试像这样调整其中一个
if ($(this).width() > 864)
或if ($(this).width() < 866)
这样就可以捕获865px了。