根据窗口宽度更改javascript

时间:2012-04-07 21:56:56

标签: javascript jquery

我认为这很简单,但经过2天的尝试,我仍然无能为力。基本上,如果屏幕宽度超过767像素,我需要运行一组命令,如果屏幕低于767像素,则需要运行另一组命令。

当屏幕宽度超过767像素时,我想:

<script type="text/javascript">

    var jsReady = false;//for flash/js communication

    // FLASH EMBED PART
    var flashvars = {};
    var params = {};

    params.quality = "high";
    params.scale = "noscale";
    params.salign = "tl";
    params.wmode = "transparent";
    params.bgcolor = "#111111";//change flash bg color here
    params.devicefont = "false";
    params.allowfullscreen = "true";
    params.allowscriptaccess = "always";
    var attributes = {};
    attributes.id = "flashPreview";

    swfobject.embedSWF("preview.swf", "flashPreview", "100%", "100%", "9.0.0", "expressInstall.swf", flashvars, params, attributes);

    <!-- and much more code... -->

</script>

当屏幕窄于768像素时,我想运行:

<script type="text/javascript">  

        jQuery(function($){
            $.supersized({
                //Background image
                slides  :  [ { image : 'img/some_image.jpg' } ]                 
            });
        });

</script>

没错......对于台式机和平板电脑,我想展示一个全屏视频背景。对于较小的屏幕(小于767像素),我想显示一个静止图像背景。

3 个答案:

答案 0 :(得分:2)

if(screen.width > 767) {
   code A...
} else {
   code B...
}

答案 1 :(得分:2)

您可以使用$(window).width()获取当前窗口大小,并在窗体的resize事件上附加处理程序。对于简单的用途,它就像

一样简单
$(window).resize(funcion() {
    $width = $(window).width();
    if($width < 767) {
            $.supersized({
                //Background image
                slides  :  [ { image : 'img/some_image.jpg' } ]                 
            });
    } else {
        //if width is greater than 767
    }
});

答案 2 :(得分:1)

由于你使用的是JQuery,你可以使用它:

if ($(window).width > 767) { ... }

返回窗口的当前大小,而不是最大值