Javascript 窗口小时调整窗口大小,即使在窗口宽度变大后也保持不变

Javascript 窗口小时调整窗口大小,即使在窗口宽度变大后也保持不变,javascript,jquery,Javascript,Jquery,很抱歉标题不明确,我不确定该用什么。我想根据窗口大小调整播放器(Javascript)的大小,以使其具有响应性。标准宽度为620px,如果宽度小于我想要的宽度,则组件的宽度应为100%。我使用jQuery添加了一个事件侦听器。但是,问题是,当窗口大小小于620时,播放器的组件宽度变为100%,即使之后窗口大小变大,它仍保持为100%。这是我的密码 function resizeVideo() { var width = $('#slideshow').width(); if(widt

很抱歉标题不明确,我不确定该用什么。我想根据窗口大小调整播放器(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);
函数resizeVideo(){
变量宽度=$(“#幻灯片放映”).width();
如果(宽度<620){
$('#object')。宽度('100%);
$('#对象#背景')。宽度('100%);
$(“#对象#滑动区域”).width('100%);
$(“#对象#控件”).width('100%”);
//警报(“此处”);
}
否则{
}
}
调整视频大小();
window.addEventListener(“resize”,resizeVideo,false);

只需从窗口宽度调整大小,而不仅仅是从幻灯片中调整大小即可:

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);
    }
}

只需从窗口宽度调整大小,而不仅仅是从幻灯片中:

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);
    }
}

您可以在else语句中调整回原始宽度(假设原始宽度为620:

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%');
   } else {
     $('#object').width(620);
     $('#object #background').width(620);
     $('#object #slide_area').width(620);
     $('#object #controls').width(620);
   }
}
函数resizeVideo(){
变量宽度=$(“#幻灯片放映”).width();
如果(宽度<620){
$('#object')。宽度('100%);
$('#对象#背景')。宽度('100%);
$(“#对象#滑动区域”).width('100%);
$(“#对象#控件”).width('100%”);
}否则{
$('物体')。宽度(620);
$('#对象#背景')。宽度(620);
$(“#对象#滑动区域”)。宽度(620);
$(“#对象#控件”)。宽度(620);
}
}

您可以在else语句中将大小调整回原始宽度(假设原始宽度为620:

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%');
   } else {
     $('#object').width(620);
     $('#object #background').width(620);
     $('#object #slide_area').width(620);
     $('#object #controls').width(620);
   }
}
函数resizeVideo(){
变量宽度=$(“#幻灯片放映”).width();
如果(宽度<620){
$('#object')。宽度('100%);
$('#对象#背景')。宽度('100%);
$(“#对象#滑动区域”).width('100%);
$(“#对象#控件”).width('100%”);
}否则{
$('物体')。宽度(620);
$('#对象#背景')。宽度(620);
$(“#对象#滑动区域”)。宽度(620);
$(“#对象#控件”)。宽度(620);
}
}

为什么不在你的Elsey中重新调整到原来的宽度呢?你真的不希望一个空的
Elsee
分支可以完成很多事情,是吗?@Pete:这很奇怪。但是,我自己想出来的。请将解决方案作为答案发布,我很乐意接受。做“#id#id”选择器比单独执行第二个id慢得多。原因:您从未将其设置回您想要的大小。您有一个空的else,需要重置默认值。最好使用类,不必担心重置为默认值。对于CSS媒体查询,甚至不需要使用JavaScript!为什么不将大小调整回or你的Elsey的原始宽度你真的不希望一个空的
else
分支完成很多事情,是吗?@Pete:这很奇怪。但是,我自己想出来了。请把解决方案作为答案发布,我很乐意接受。做“#id#id”选择器比单独执行第二个id慢得多。原因:您从未将其设置回您想要的大小。您有一个空的else,需要重置默认值。最好使用类,不必担心重置为默认值。对于CSS媒体查询,甚至不需要使用JavaScript!感谢您提供的提示。真的吗谢谢你的提示。真的很有帮助。+1:)