草庐IT

安卓浏览器扩展

全部标签

javascript - typescript 无法导入没有扩展名的文件

我正在尝试在我的新Angular2项目中导入文件。入口文件“main.ts”能够使用以下方式导入其他typescript文件:import{AppModule}from'./module/app.module';另一方面,“app.module.ts”无法导入没有文件扩展名的ts文件:import{AppComponent}from'../component/app.component';如果我在文件名中添加“.ts”,一切都会按预期进行...我的错误是什么?我假设我正在按照Angular指南(https://angular.io/docs/ts/latest/guide/webpac

javascript - Vue Js - 无法读取未定义的属性 - (但它在浏览器上呈现)

我在Vue上有这种奇怪的行为。我正在尝试呈现一个名为descrizione的对象的嵌套属性并且它有效!但在控制台中,我收到来自Vue的警告:TypeError:Cannotreadproperty'descrizione'ofundefined"这是我的代码:HTML{{modello.lineaGialla.descrizione}}{{modello.lineaBlu.descrizione}}JSON{"lineaGialla":{"class":"gialla","selected":false,"descrizione":"Questaèlineagialla","descr

javascript - 使用对象扩展运算符添加多个对象(ES6、JavaScript)

我有3个具有相同数据但内部数组具有单独服务和提供ID的对象,因此我尝试获得如下所述的预期结果和pleasecheckmytryhere.提前致谢对象1:constobj1={bid:1,mobile:9533703390,services:[{service_id:5,offer_id:10,count:1}]}对象2:constobj2={bid:1,mobile:9524703390,services:[{service_id:8,offer_id:12,count:1}]}对象3:constobj3={bid:1,mobile:9524703390,services:[{serv

javascript - 为什么不同的网络浏览器对这段代码显示不同的输出?

FrontpageHello vara=1; functionmyFunc(){ document.write(a+""); a=a+1; myFunc();}Heythere在InternetExplorer中输出是0到53075,而在Chrome中是12561。我不明白为什么不同的浏览器显示不同的输出以及它如何停止递归。谢谢。 最佳答案 这是一个递归函数,IE和Chrome有不同的Javascript渲染引擎。(Chrome使用V8)。很有可能是关于特定引擎内部的一些不重要的细节。在这种情况下,与堆栈大小有关(在它“爆炸”之前可

javascript - Web 扩展中的共享 vuex 状态(死对象问题)

我正在尝试在Web扩展中使用共享的vue.js状态。状态存储在后台脚本的DOM中并呈现在弹出页面中。第一次尝试我的第一次尝试是使用一个没有vuex的简单商店:背景.jsvarstore={count:0};弹窗.jsbrowser.runtime.getBackgroundPage().then(bg=>{varstore=bg.store;varvue=newVue({el:'#app',data:{state:store},})})popup.html{{state.count}}+这在第一次打开弹出窗口时有效(您可以递增计数器并更新值)但是当第二次打开弹出窗口时,渲染失败并显示[

javascript - 从 iframe 获取 url 并在浏览器 url 中更新哈希

我尝试了一些不同的方法,但没有任何效果,基本上我需要从iframe获取当前位置/url,获取我想要的部分并将其返回到url中的哈希。我如何在javascript中执行此操作? 最佳答案 选择正确的iframe元素,拉出src属性,做你的事情,将src分配给window.location.hashvariframe=$('iframe');varsrc=iframe.attr('src');window.location.hash=src;编辑如果您想从iframe获取动态位置,您必须访问contentWindow属性:varifra

javascript - 避免乱七八糟的浏览器死亡

在过去的几个月里,我一直在开发一个大型网络应用程序。反复地,我们编写的代码,根据DOM和JS规范,应该完美运行,但仍然设法完全杀死我们的一个或多个测试浏览器——最近,我们生成了本应无害但导致一般的纯JavaScript代码IE8中的保护错误、完全卡住Safari的其他代码段等。好吧,我们将逐项解决每个问题,付出尽可能多的鲜血、汗水和代码。但我想到的问题如下:是否有关于此类浏览器弱点的知识库?与quirksmode.org相当的东西,但有关于如何编写代码以避免杀死我们的浏览器的指南?谢谢。编辑精确度:并不是说它改变了问题的任何内容,而是我们使用的是jQuery。

javascript - 获取浏览器是否繁忙

我正试图找到一种方法来获取浏览器当前是否正忙于JavaScript。我正在考虑制作一个Firefox扩展来注入(inject)一个bool值,或者如果当前页面正在加载某些东西(通过ajax或只是正常的页面加载),或者与Greasemonkey脚本相同,或者通过一些JavaScriptAPI(这会是最好的解决方案,但据我所知,这种情况不存在)。我想知道最好的方法是什么。我一直在寻找FirefoxAddon/Greasemonkey教程来制作这样的东西,但找不到任何东西。有没有人有任何提示或资源可以指导我或更好的解决方案来解决这个问题?谢谢编辑:说到忙,我主要只需要知道浏览器是否正在从服务

javascript - 从需要的文件扩展 Node.js 中的 Array.prototype

我将以下内容保存在test.js中。它在浏览器中成功扩展了Array,但它似乎不适用于node和require。有人可以解释这里出了什么问题吗?(function(){Array.prototype.max=function(){returnconsole.log("Array.prototype.max");};returnArray.max=function(){returnconsole.log("Array.max");};}).call(this);然后,从终端:>My-MacBook-Pro:me$node>vartest=require("./test")>[1,2,3]

javascript - 现代浏览器如何实现 JS Array,具体是添加元素?

我的意思是,当调用Array对象上的.push()时,JavaScript会增加底层“数组”的容量(元素数量)。此外,如果有一个很好的资源可以为JS找到此类信息,那么将其包含在内会很有帮助。编辑看起来JSArray就像一个具有特殊属性的对象字面量。但是,我对较低层次的细节感兴趣——浏览器如何在各自的JS引擎中实现这一点。 最佳答案 这个问题不可能只有一个正确答案。数组的扩展机制是一个内部实现细节,并且可能因一个JS实现而异。事实上,Tamarin引擎有两种内部用于数组的不同实现,具体取决于它确定数组是顺序的还是稀疏的。