Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使幻灯片获得100%的效果,而不是根据浏览器重新调整大小?_Javascript - Fatal编程技术网

Javascript 如何使幻灯片获得100%的效果,而不是根据浏览器重新调整大小?

Javascript 如何使幻灯片获得100%的效果,而不是根据浏览器重新调整大小?,javascript,Javascript,我有一个全屏幻灯片页面,但是幻灯片并没有占据100%的背景。相反,它们以浏览器的大小为基准。我想让幻灯片拍摄100%的背景。我想我把它缩小到了一个函数,但我不确定,也不擅长JavaScript。下面是函数: // calculate image size, top and left position jQuery.fn.superbgCalcSize = function(imgw, imgh) { var options = $.extend($.fn.super

我有一个全屏幻灯片页面,但是幻灯片并没有占据100%的背景。相反,它们以浏览器的大小为基准。我想让幻灯片拍摄100%的背景。我想我把它缩小到了一个函数,但我不确定,也不擅长JavaScript。下面是函数:

    // calculate image size, top and left position
jQuery.fn.superbgCalcSize = function(imgw, imgh) {      

    var options = $.extend($.fn.superbgimage.defaults, $.fn.superbgimage.options);

    // get browser dimensions
    var browserwidth = $(window).width();
    var browserheight = $(window).height();

    // use container dimensions when inlinemode is on
    if (options.inlineMode === 1) {
        browserwidth = $('#' + options.id).width();
        browserheight = $('#' + options.id).height();
    }

    // calculate ratio
    var ratio = imgh / imgw;

    // calculate new size
    var newheight = 0; var newwidth = 0;
    if ((browserheight / browserwidth) > ratio) {
        newheight = browserheight;
        newwidth = Math.round(browserheight / ratio);
    } else {
        newheight = Math.round(browserwidth * ratio);
        newwidth = browserwidth;
    }

    // calculate new left and top position
    var newleft = Math.round((browserwidth - newwidth) / 2);
    var newtop = Math.round((browserheight - newheight) / 2);

    var rcarr = [newwidth, newheight, newleft, newtop];
    return rcarr;

};
让我知道是否需要更多的代码,甚至需要链接到整个文档,就像我说的,我对JS没有任何经验,也不知道问题出在哪里


*我试着用CSS来做,但是我遇到了一个错误,当它转换到下一个图像时,它会在显示下一个图像之前发出第一个图像的实际大小的哔哔声,这很难识别。解决这个问题也可以解决我的问题。

嘿,zartech,我建议使用和,这样,如果用户要调整屏幕大小,您的
superbgcalize
就可以进行调整。