使用javascript媒体查询来更改2个div的类

时间:2013-05-17 15:06:56

标签: javascript media

<script>
     $(window).resize(function(){
     console.log('resize called');
     var width = $(window).width();
     if(width >= 900){
         $('#lefty').removeClass('alpha');
         $('#righty').removeClass('omega');
     }
     else{
         $('#lefty').addClass('alpha');
         $('#righty').addClass('omega');
     }
   })
   .resize();
</script>

我正在尝试使用此代码向两个div(lefty和righty)添加/删除alpha和omega类。

在一些firebug调试后,这段代码甚至都没有被执行,我不完全确定原因。

它可能相关,也可能不相关,但这个代码应该改变的div是在这样的php中包含:

<?php
  require ("include_nav.html");
?>

我不太了解javascript,知道为什么这不起作用!谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

代码中的函数正在运行:

http://jsfiddle.net/ccjyD/

可能无法调用的原因:

  • 在加载jQuery之前调用它。
  • $(window).resize...之前有一些语法错误导致它没有执行事件监听器。
  • PHP文件出错。

更新

大多数情况下,如果事件监听器只触发一次,那是因为:

$(window).resize(yourFunc());
function yourFunc(e){  //^------shouldn't have ()
    //blah
}

如果您使用匿名函数而不是此函数,则代码中必定存在其他问题。