javascript - 当窗口较小时窗口会调整大小,即使窗口宽度较大后也保持不变

标签 javascript jquery

抱歉,标题含糊不清,不知道应该使用什么。我想根据窗口大小调整播放器(Javascript)的大小,以使其具有响应能力。标准宽度是620px,如果宽度小于我希望组件的宽度应该是100%。我使用 jQuery 添加了一个事件监听器。但是,问题是,当窗口大小小于 620 时,播放器组件的宽度会变为 100%,并且即使之后窗口大小变大,它仍然保持为 100%。这是我的代码。

function resizeVideo() {
  var width = $('#slideshow').width();
    if(width < 620) {
      $('#object').width('100%');
      $('#object #background').width('100%');
      $('#object #slide_area').width('100%');
      $('#object #controls').width('100%');
      // alert("here");
    }
    else {

    }
  }
resizeVideo();
window.addEventListener("resize", resizeVideo, false);

最佳答案

只需从窗口宽度调整大小,而不仅仅是从 #slideshow 调整大小:

function resizeVideo() {
    var width = $(window).width();
    if(width < 620) {
        //Resize to 100%
        $('#object, #background, #slide_area, #controls').width('100%');
    } else {
        //Resize back to normal value
        $('#object, #background, #slide_area, #controls').width(620);
    }
}

作为监听器,我将使用 jQuery 这样做:

$(window).on('resize', resizeVideo);

关于javascript - 当窗口较小时窗口会调整大小,即使窗口宽度较大后也保持不变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16147742/

相关文章:

javascript - 检查元素是否正在动画 CSS3

javascript - 使用 if 语句和 jquery 来限制动画

javascript - 将 props 传递给 React 中的子组件

javascript - 使用 $(document).ready(function() 访问另一个 js 文件中的函数

javascript - Angularjs 没有从 Controller 提供数据

javascript - CKEditor 将 html 解析为节点

javascript - 未捕获的 TypeError : jQuery. event.addProp 不是函数

javascript - Backbone 模型如何从 Ajax 结果触发事件?

jquery - jqGrid - 删除问题

javascript - 当我通过 ajax 使用跨域调用通用处理程序时,在 ajax 成功时数据未定义