我正在为使用contextMenus更改所选文本的CSS的Chrome浏览器制作一个扩展程序。但我无法访问HTML结构,即所选文本的parentNode,因为在本例中我可以非常轻松地做到这一点。varselection=window.getSelection();如果在浏览器中默认使用,这将返回所选文本的parentNode,稍后我可以使用它来更改CSS。如何使用Chrome浏览器扩展程序实现这一点? 最佳答案 由于Chrome不允许您使用上下文菜单与您单击的元素进行交互,因此您必须创建一个contentscript存储在页面上被右
我在Mac(Mavericks最新版本)中使用WebStorm(8.0.4)。我正在尝试为脚本调试这个简单的循环:for(vari=0;i我正在使用Chrome和JBExtension,配置如下:Host:127.0.0.1Port:63342在项目的设置中,在Javascript中,调试器我有这样的配置:Built-inserverport:63342代码在断点处停止(在for循环中),但一秒钟后,我收到一条消息:Disconnected(browserdisconnected)我失去了Debug模式...我很迷茫,我不知道会发生什么......请帮忙吗?问候
我从0.11/0.12开始就一直在使用Node,所以如果这是一个来晚了的问题,请纠正我。我试图理解使用util.inherits(Son,Dad)和简单地扩展Son.prototype=[new]Dad()的原型(prototype)之间的区别.对于这个例子,我继承了一个Transformstream首先使用util.inherits:varutil=require('util')varTransform=require('stream').Transformutil.inherits(TStream,Transform)functionTStream(){Transform.call
ChromeDevTools有一个方便的本地存储和session存储检查器,但没有什么可检查的chrome.storage.sync?chrome://sync-internals/似乎没有显示每个扩展的同步存储的实际内容。 最佳答案 StorageAreaExplorer扩展提供了用于查看、编辑、清除、导入和导出chrome.storage.local、chrome.storage.sync、localStorage和sessionStorage.将来可能会在本地实现此功能:https://crbug.com/848752.Man
我正在开发一个带有list的Chrome扩展程序,目前可以访问所有主机。后台脚本将内容脚本注入(inject)所有框架。DOM加载完成后,顶部页面/框架中的内容脚本开始遍历DOM树。当walker遇到iframe时,它需要向与该iframe窗口相关联的特定内容脚本发送消息(可能是跨源)以开始其工作,并在此消息中包含一些序列化数据。父窗口暂停执行并等待子窗口完成它的行走,并发送回一条消息,表明它已完成并连同序列化数据。parent然后继续其工作。我已经尝试了两种方法来解决这个问题:frameElement.contentWindow.postMessage:这在大多数情况下都有效,但
我可以使用内容脚本将HTML/CSS动态添加到页面中。但是我尝试添加一个iframe标签,但遇到了一点麻烦。这是我的代码:constmyIFrame=``;letdiv=document.createElement('div');div.style.zIndex=9999999;div.innerHTML=myIFrame;document.body.insertBefore(div,document.body.firstChild);请注意modalIFrameURL值为:chrome-extension://omelijcoklpokoeobkpepoipjpbakoeo/moda
我有一个Chrome扩展程序(下面提供了源代码)遇到了竞争条件。我需要一些注入(inject)的JavaScript在网页上的所有其他JavaScript之前运行。我正在尝试做的一个简单示例的源代码在这里:https://github.com/nddipiazza/oogi它试图将namespace添加到所有实际上将作为cookie持久化的cookie名称,但同时从正在使用的cookie中删除这些namespace。因此,如果没有扩展名,您通常会在访问网站后保存2个cookie:JSESSIONIDlastVisit此扩展会将它们保存为:oogi$JSESSIONIDoogi$last
在Javascript中,具有以下说明代码:classBase{constructor(){this._val=1}getval(){returnthis._val}}classXtndextendsBase{setval(v){this._val=v}}letx=newXtnd();x.val=5;console.log(x.val);//prints'undefined'实例x不会从Base类继承getval()...。实际上,Javascript在存在setter的情况下将缺少getter视为未定义。我遇到的情况是,我有很多类都具有完全相同的一组获取方法,但设置方法各不相同。目前
我是堆栈溢出和编程的新手,所以请原谅我任何尴尬的措辞!我正在构建一个图形丰富且大小为680x9400像素的横向滚动网站。我将使用一些javascript和/或mootools来创建一个很酷的横向滚动效果,类似于http://sursly.com.我正在对所有使用的图像进行网络优化,但想知道是否有人对如何加快页面加载有任何其他想法?例如,有没有办法在水平部分预加载网站?提前致谢。 最佳答案 使用类似于jQueryLazyLoadingPlugin的东西您可以获得明显的加速,因为只会加载可见图像。因此它们不会与屏幕外图像竞争。我知道您可
我希望链接显示在下面的选项卡中,从而使弹出窗口消失。目前有这个://Openlinksintabfrompopupif(document.location.search=='?popup')$('a').attr('target','_blank');但是_blanks在新选项卡中打开。任何帮助将不胜感激-谢谢! 最佳答案 您需要先通过以下方式获取当前选定的选项卡,http://code.google.com/chrome/extensions/tabs.html#method-getSelected然后你使用tab.id,回调已经