Javascript window.matchMedia(“最大宽度:1700px”);不起作用?

Javascript window.matchMedia(“最大宽度:1700px”);不起作用?,javascript,css,media-queries,matchmedia,Javascript,Css,Media Queries,Matchmedia,嘿,朋友们,我正在尝试使用window.matchMedia(“(最大宽度:1700px)”)在页面为1700px或更小时在html中添加一些元素。现在我正试图通过在屏幕上显示一个函数警报“yo”来测试它。这和我试图改变的其他事情不一样?有什么想法吗 const-ham=document.querySelector('.nav-box'); const menu=document.querySelector('.menu'); const menuClose=document.querySe

嘿,朋友们,我正在尝试使用
window.matchMedia(“(最大宽度:1700px)”)
在页面为1700px或更小时在html中添加一些元素。现在我正试图通过在屏幕上显示一个函数警报“yo”来测试它。这和我试图改变的其他事情不一样?有什么想法吗

const-ham=document.querySelector('.nav-box');
const menu=document.querySelector('.menu');
const menuClose=document.querySelector(“#菜单关闭”);
const leftArrow=document.querySelector('#left');
const rightArrow=document.querySelector(“#right”);
const img=document.querySelector('.image slider');
var x=window.matchMedia((最大宽度:1700px));
设num=1;
x、 addEventListener(调整菜单设计);
调整菜单设计(x);
ham.addEventListener('click',function(){
ham.classList.add('ham-open');
menu.style.marginLeft='50px';
})
menuClose.addEventListener('click',function(){
ham.classList.remove('ham-open');
menu.style.marginLeft='-700px';
})
leftArrow.addEventListener('click',function(){
num--;
如果(数值>0){
img.style.backgroundImage='url(img/fam-'+num+'.jpeg)';
console.log(num);
日志(img.style.backgroundImage);
}否则{
num=4;
img.style.backgroundImage='url(img/fam-'+num+'.jpeg)';
}
})
rightArrow.addEventListener('click',函数(){
num++;
如果(num有几个问题

x.addEventListener(adjustMenuDesign);
错误,因为addEventListener需要事件和回调。 但您可能想做的是将此添加到调整大小事件中

window.addEventListener("resize", adjustMenuDesign);
此外,您还需要在resize上再次运行
matchMedia
查询,因此将该段代码移动到adjustMenuDesign中在这里是有意义的

下面是对这些变化的处理


尝试查看控制台日志,此->
x.addEventListener(调整菜单设计);
是无效代码。噢,谢谢@Keith。不过有几个问题。警报现在似乎有效,但它只发出一次警报?当我在1700px以下和以上来回调整宽度时,它不会一直发出警报?我还试着更改图像滑块上箭头的颜色(我已经将其声明为常量)这不起作用吗?您需要再次检查调整大小。这可能就是您的
x.addEventListener(
的本意,…我将在这里更新您的代码片段以显示更改。好的,谢谢,我也很感激,所以我尝试了
window.addEventListener('onresize',adjustMenuDesign);
x.addEventListener('onresize',adjustMenuDesign);
窗口。addEventListener('resize',adjustMenuDesign);
x.addEventListener('resize',adjustMenuDesign);
这些都不起作用吗?