繁体   English   中英

Javascript (Modernizr/YepNope.js) 语法和用法

[英]Javascript (Modernizr/YepNope.js) syntax and usage

我在我的网站上使用了 Modernizr 的自定义版本(仅包括我需要测试的内容)。 也就是说,我在使用 JavaScript 时挣扎,我能做的最好的事情就是剪切、粘贴和祈祷。

我使用 Modernizr.load 来异步加载资源,但我让它工作的唯一方法是去http://mothereffinghsl.com/并复制第 73 到 86 行(我看到它在 HTML5 样板视频教程中使用)...我将发布我的版本:

<script>
  Modernizr.load({
    test: Modernizr.fontface,
    yep: [      
     ,'css!//static.adaminfinitum.com/css/lazy-fonts.css'      
    ],
    callback: function(url, testResult) {
    }
  });
</script>

因为我这样做对文档http://yepnopejs.com/为的Modernizr的YepNope部分得到了大幅提升,但我有几个问题。

1.) 如果我删除 < script > 标签,我是否可以将它直接粘贴到我的 Modernizr 文件中(它目前就在我页面的结束正文标签之前)?

2.) 如果我想知道什么时候/如何/什么被使用,我需要使用 console.log (下面的例子)?

从 yepnope 文档:

yepnope({
  load: ["https:/­/my-cdn.com/jquery.min.js?v=1.7.1", "https:/­/my-cdn.com/jquery-ui.min.js?v=1.8.16"],
  callback: {
    "jquery.min.js": function () {
      console.log("jquery loaded!");
    },
    "jquery-ui.min.js": function () {
      console.log("jquery-ui loaded!");
    }
  }
});

在文档的某些地方,我看到他们使用“警报”,但似乎唯一可以发出警报的地方是我服务器上的记录,这似乎是 console.log 正在做的事情。 这是正确的,只是一种不同的措辞方式,还是两者之间有区别?

如您所知,我是 JS 菜鸟,我真正想要的是能够获取有关我的流量中有多少支持或不支持给定功能的使用情况统计信息。

注意:我在这里阅读了所有似乎相关的内容,几周前我问了一个过于宽泛的问题,其中包括这个问题(实际上是将 6 个问题分解为一个……抱歉)。

谢谢

更新:无论出于何种原因,使用上面显示的“协议相关”URL(省略 http:)给我带来了很多 404 错误的问题(它有时被解释为相对链接),所以我最终将http:添加到链接到资源。

您可以将不带脚本标签的 JavaScript 代码粘贴到 Modernizer 文件中,这是正确的,只要您在定义 Modernizer 对象之后(即在 Modernizer 文件的末尾)执行此操作。

console.log函数不会记录到服务器上的文件,而是记录到 Web 浏览器中的 JavaScript 控制台。 并非所有的 Web 浏览器都有 JavaScript 控制台,但那些有的浏览器可以在那里查看日志消息和错误消息。 Firefox 和 chrome 都有可以打开的 JavaScript 控制台。 记住console.log应该只在你的代码中用于调试。

一个警告是,当 JavaScript 控制台未在窗口中打开时,某些版本的 Internet Explorer 没有定义console.log 这将导致您的 JavaScript 意外停止。 如果您有选择,请使用 Firefox 或 Chrome 来检查您的代码如何运行,这可能会为您节省大量时间。

alert功能是一种不太方便的调试方式。 它将在您的浏览器中弹出一个包含您的消息的对话窗口。 您需要关闭该消息才能继续运行 JavaScript 程序。 同样,服务器端不会记录任何内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM