我有两个广告脚本,一个用于桌面,另一个用于移动。目前,一个在特定大小上设置为display: none
,依此类推。我希望防止当前未显示的脚本无论如何运行,因为脚本往往是资源密集型的,我正在尝试加快页面加载时间。有没有办法只让脚本以一定的宽度执行?
我在想:
if ($(window).width >= 768px) {
<script> Do stuff </script>
} else {
<script> Do stuff </script>
}
但是我没有运气(我不确定脚本中的脚本是如何工作的)。还有另一种方法可以解决这个问题吗?
答案 0 :(得分:4)
不要在某些宽度上创建执行脚本,而是考虑将它们分成不同的文件,然后加载某些宽度的文件。这样您只需加载实际需要的脚本。
var size,
script;
if($(window).width() > 768) {
size = 'large';
} else {
size = 'small';
}
script = $('<script />').attr('src', 'http://example.com/script-' + size + '.js');
$('head').append(script);