[聚合文章] 程序的响应式处理 matchMedia

响应式设计 2014-05-06 15 阅读
现代浏览器的响应式设计在CSS方面只要@一下media就可以简单实现。虽然响应式设计更注重CSS,但程序放面也可能存在根据不同media做出不同行为的需求。在现代浏览器上可以通过调用 matchMedia 方法得到一个对象,然后添加监听回调函数来切换不同media上的行为。
其实这个 matchMedia 有点柯里化的感觉。实际上我们要做的是监控某个media的变化状态,但操作起来是先取得一个对象,然后再添加监听函数。下面就是使用的例子,拖动浏览器边缘修改浏览器窗口大小后,当宽度在500左右变化时候触发。 <script>
//先match一个media
var w500=matchMedia("(max-width:500px)");
//添加监视,当match状态变化时触发
w500.addListener(function(e){
console.log(e.matches);
});
</script>

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。