Tag: JavaScript

脚本标记 – asynchronous&延迟

我有一些关于属性async & defer的问题,这个问题我的理解只能在HTML5浏览器中使用。 我的一个网站有两个外部JavaScript文件,当前坐在</body>标签之上; 第一个是来自谷歌的jquery ,第二个是本地外部脚本。 尊重网站加载速度 添加async到页面底部的两个脚本有什么好处吗? 将这两个脚本的async选项添加到<head>的页面顶部会有什么好处吗? 这是否意味着他们下载页面加载? 我认为这会导致HTML4浏览器延迟,但它会加快HTML5浏览器的页面加载? 使用<script defer src=… 在<head>加载这两个脚本的属性会defer与</body>之前的脚本相同的影响吗? 我再次假设这会使HTML4浏览器变慢。 使用<script async src=… 如果我有两个启用了async脚本 他们会同时下载吗? 或者一次一个页面的其余部分? 脚本的顺序是否会成为一个问题? 例如,一个脚本依赖于另一个脚本,所以如果下载速度更快,则第二个脚本可能无法正确执行。 最后,我最好把事情保持原样,直到HTML5更常用。

通过iPhone和Android上的JavaScript检测手指滑动

你怎么能检测到用户用JavaScript在网页上向某个方向滑动手指? 我想知道是否有一个解决scheme,可以在iPhone和Android手机上的网站工作。

在JavaScript中检查string相等的正确方法是什么?

什么是正确的方法来检查JavaScript之间的string平等?

在d3.js中调整窗口大小时调整svg的大小

我用d3.js绘制散点图 在这个问题的帮助下: 获取屏幕的大小,当前网页和浏览器窗口 我正在使用这个答案: var w = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], x = w.innerWidth || e.clientWidth || g.clientWidth, y = w.innerHeight|| e.clientHeight|| g.clientHeight; 所以我可以像这样把我的情节适合用户的窗口: var svg = d3.select("body").append("svg") .attr("width", x) .attr("height", y) .append("g"); 现在,我希望在用户调整窗口大小时重新resize。 PS:我没有在我的代码中使用jQuery。

如何重置Redux商店的状态?

我正在使用Redux进行状态pipe理。 如何将商店重置为初始状态? 例如,假设我有两个用户帐户( u1和u2 )。 想象下面的一系列事件: 用户u1login到应用程序并执行某些操作,因此我们将一些数据caching在商店中。 用户u1注销。 用户u2login到应用程序,而无需刷新浏览器。 在这一点上,caching的数据将与u1相关联,我想清理它。 第一个用户注销时,如何将Redux存储重置为初始状态?

放大点(使用比例和平移)

我希望能够放大HTML 5canvas中的鼠标下的点,例如在Google地图上缩放。 我怎样才能做到这一点?

你如何在JavaScript中实现堆栈和队列?

在JavaScript中实现堆栈和队列的最佳方式是什么? 我正在寻找分stream码algorithm,我将需要这些数据结构。

JavaScript控制台中的颜色

Chrome内置的JavaScript控制台能显示颜色吗? 我想要红色错误,橙色警告和console.log绿色。 那可能吗?

我们可以在浏览器会话中跨网页引用JavaScriptvariables吗?

通过JavaScript的w3schools教程 ,发现下面的声明: 全局variables具有全局范围:网页上的所有脚本和函数都可以访问它。 所以,我的查询是,我们有办法引用在特定的网页中声明的variables? 例如,在C语言中,我们有extern关键字,使用它我们可以访问在另一个文件中声明的variables,但是我们可以在我们的文件中引用它。 例如: 在fileA.html的脚本标签里,我们声明了var x = 50 ,在function()声明之外,所以它是全局的wrt fileA.html。 如果我有fileB.html,我们可以参考fileB.html中embedded的脚本标记中的x? 只是要清楚,这不是在网页上重复使用JavaScript文件的情况。

运行tabs.executeScript时未检查runtime.lastError?

我设法build立了Ripple模拟器开源( https://github.com/apache/incubator-ripple )。 我根据说明(Jake构build)构build了它,它创build了Chrome扩展目标,允许我通过构build的Chrome扩展来testing我的Web应用程序,按照https://github.com/apache/incubator-ripple/blob /master/doc/chrome_extension.md 。 我成功地将解压后的扩展加载到chrome上,但是当我启用它时,没有任何反应,虽然页面重新加载扩展不起作用,而是我得到2个错误: 未捕获的ReferenceError:未定义webkitNotifications webkitNotifications.createHTMLNotification('/views/update.html').show(); 运行tabs.executeScript时未经检查的runtime.lastError:无法访问chrome:// URL chrome.tabs.executeScript(tabId, { 我如何解决这个问题? 完整的background.js: if (!window.tinyHippos) { window.tinyHippos = {}; } tinyHippos.Background = (function () { var _wasJustInstalled = false, _self; function isLocalRequest(uri) { return !!uri.match(/^https?:\/\/(127\.0\.0\.1|localhost)|^file:\/\//); } function initialize() { // check version info for showing welcome/update views var version = window.localStorage["ripple-version"], xhr = […]