防止脚本运行取决于设备大小

时间:2015-12-07 13:36:30

标签: javascript jquery

我有两个广告脚本,一个用于桌面,另一个用于移动。目前,一个在特定大小上设置为display: none,依此类推。我希望防止当前未显示的脚本无论如何运行,因为脚本往往是资源密集型的,我正在尝试加快页面加载时间。有没有办法只让脚本以一定的宽度执行?

我在想:

if ($(window).width >= 768px) {
    <script> Do stuff </script>
} else {
    <script> Do stuff </script>
}

但是我没有运气(我不确定脚本中的脚本是如何工作的)。还有另一种方法可以解决这个问题吗?

1 个答案:

答案 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);