Tag: modernizr

使用Modernizr.load

我使用Modernizr进行条件加载资源。 我的代码是 Modernizr.load([ { // If browser supports touch test : Modernizr.touch, //Load iPad related resorces yep : [ ‘javascript/ipad-default.js’, ‘javascript/touchscroll.js’, ‘javascript/ipad-scroll.js’, ‘javascript/mobile.js’ ], // Load common resorces load : [‘javascript/ipad-default.js’] } ]); 这工作正常。 但我想知道当我测试Modernizr.load时是否可以加载Modernizr.load所有资源。 要清楚,我想加载Modernizr.load所有资源。 我怎样才能做到这一点? 这是一个好方法吗?

基于Modernizr的不同方法:click vs hover

我希望能够根据Modernizr的触摸/非触摸输出在.mouseover和.click事件之间进行选择。 if (Modernizr.touch) { $(el).click(stuff); $(el).click(stuff); } else { $(el).mouseover(stuff); $(el).mouseover(stuff); } 但我不想两次写出所有这些东西。 是否可以定义一些东西,以便我可以调用: if (Modernizr.touch) {correctEvent = click} else {correctEvent = mouseover} $(el).correctEvent(stuff); $(el).correctEvent(stuff);

带有Modernizr.Load的Uncaught TypeError

我正在尝试使用以下代码来允许我使用datepicker。 虽然我之前有过这种工作的变化,但我现在无法在恢复后使其正常工作。 我在’Modernizr.load’行下面收到错误’Uncaught TypeError:undefined is not function’ Modernizr.load({ test: Modernizr.inputtypes.date, nope: [‘http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js’, ‘http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.7/jquery-ui.min.js’, ‘jquery-ui.css’], complete: function () { if (window.jQuery) { jQuery(‘input[type=date]’).datepicker({ dateFormat: ‘yy-mm-dd’ }); } } }); 有关此错误的原因是什么的任何建议?

Document.body不存在。 Modernizr连字符测试需要它

我希望我能解释造成这个问题的原因。 我搜索过,根本不知道。 当我在项目之间移动这个基础,红色等框架时,它往往会遵循。 任何建议都会有用。 http://goo.gl/HbTUL

modernizr检查灰度filterIE 10

IE 10不支持DXfilter(yeaaaay)我目前正在使用$.browser来检测IE 10并实现svg解决方案。 但是$.browser已被弃用,将被删除或已被删除(Yeaaaay再次!!!!)。 那么,在这种情况下,现代化的替代品是什么呢? $.browser ? filter: url(“data:image/svg+xml;utf8,#grayscale”); /* Firefox 10+ */ filter: gray; /* IE6-9 */ -webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */ -webkit-transition: all .6s ease; /* Fade to color for Chrome and Safari */ -webkit-backface-visibility: hidden; /* Fix for transition flickering */ 我尝试过if (Modernizr.css_filters)但是没有用

使用Modernizr加载脚本…不工作

我在尝试使用Modernizr版本的yepnope加载脚本时遇到问题,并且无法理解为什么它们不同。 如果我使用yep nope加载脚本,它可以正常工作: yepnope([ ‘/js/fancy-box-2.0.4/jquery.fancybox.css’, ‘/js/jquery-1.7.min.js’, ‘/js/jquery.form-defaults.js’, ‘/js/jquery.cycle.all.js’, ‘/js/jquery.easing.1.3.js’, ‘/js/fancy-box-2.0.4/jquery.fancybox.js’, ‘/js/functions.js’, ‘http://use.typekit.com/uoy8fub.js’ ]); 但是,如果我尝试使用Modernizr打包版本的yep nope我无法得到任何东西加载…帮助? Modernizr.load([ ‘/js/fancy-box-2.0.4/jquery.fancybox.css’, ‘/js/modernizr-2.0.6.js’, ‘/js/jquery-1.7.min.js’, ‘/js/jquery.form-defaults.js’, ‘/js/jquery.cycle.all.js’, ‘/js/jquery.easing.1.3.js’, ‘/js/fancy-box-2.0.4/jquery.fancybox.js’, ‘/js/functions.js’, ‘http://use.typekit.com/uoy8fub.js’ ]);

似乎无法获得jquery resize事件来处理Modernizr媒体查询function

我正在尝试在以下函数上激活resize事件: $(function() { if (Modernizr.mq(‘only screen and (min-width: 1140px)’)) { $(‘div#ss1’).html(‘[snip]’); $(‘div#ss1’).append(”); } if (Modernizr.mq(‘only screen and (max-width: 1139px)’)) { $(‘div#ss2’).html(‘[snip]’); $(‘div#ss2’).append(”); } }); 我想为它添加一个resize的侦听器。 基于http://api.jquery.com/resize/我将第一行更改为$(window).resize(function()但是整个函数停止工作。 我究竟做错了什么? 谢谢。 更新:基于这个Paul Irish post,我将smartresize添加到我的plugins.js。 我将函数调用从$(function()更改$(window).smartresize(function()并且它停止工作。将其更改回$(function()并再次工作。为什么我不能添加resize事件这个吸盘的任何类型的听众?:-)

在控制台中解决警告时滚动DIV时阻止页面滚动

起初这似乎是在这里回答的重复问题,但还有更多需要弄清楚。 如何在谷歌Chrome控制台中给出[Violation]警告以下解决方法? [违规]为滚动阻止“鼠标滚轮”事件添加了非被动事件监听器。 考虑将事件处理程序标记为“被动”以使页面更具响应性。 这是有效的代码片段,但带有上述[Violation]警告。 $.fn.isolatedScroll = function() { this.on(‘mousewheel DOMMouseScroll’, function (e) { let delta = e.wheelDelta || (e.originalEvent && e.originalEvent.wheelDelta) || -e.detail, bottomOverflow = this.scrollTop + $(this).outerHeight() – this.scrollHeight >= 0, topOverflow = this.scrollTop <= 0; if ((delta 0 && topOverflow)) { e.preventDefault(); } }); return this; }; $(‘.js-isolated-scroll’).isolatedScroll() // Nothing to check […]

Yepnope&Modernizr screen.width条件

我正在尝试(本地)使用Yiznope和Modernizr来加载CSS和JS文件。 所以我可以更好地管理文件,并轻松编写代码。 这是目前的布局: Modernizr.load([ { test: Modernizr.mq(‘all and (max-width: 1070px)’), yep: ‘/css/smartdevice.css’,’/js/smartdevice.js’, } , { test: Modernizr.mq(‘all and (min-width: 481px) and (max-width: 1069px)’), yep: ‘/css/tablet.css’,’/js/tablet.js’, }, { test: Modernizr.mq(‘all and (max-width: 1070px)’), yep: ‘/css/screen.css’,’/js/screen.js’, } ]); 我是JS的新手,但我在可能的场合使用过jQuery。 但是它们都会立刻加载,无论如何我可以根据px宽度加载CSS文件吗? (参考上述值)。 我知道你可以做这个服务器端,但在我的位置。 它必须是js中的本地端…我目前在SCSS中编码。 一切都很好,这只是在窗口宽度上注入文件/显示文件的情况。 我认为我需要添加一个if语句,但是会提供很多帮助! -Neil PS我在本地运行,使用CodeKit和SCSS在新的iMac上运行。

Modernizr – 哪些脚本异步加载?

我有以下内容: Modernizr.load([ { load : ‘//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js’, complete : function () { if ( !window.jQuery ){ Modernizr.load(‘/js/jquery-1.6.2.min.js’); } } }, { load : [“/js/someplugin.js”, “/js/anotherplugin.js”], complete : function() { // do some stuff } }, { load: (‘https:’ == location.protocol ? ‘//ssl’ : ‘//www’) + ‘.google-analytics.com/ga.js’ } ]}; 我读到Modernizr加载脚本Asyncronously。 但在上面的例子中,哪些是异步加载? 是否所有以下内容都是异步加载的? jquery.min.js someplugin.js anotherplugin.js 的ga.js 或者它是异步和有序加载的组合,如下所示: […]