草庐IT

headless_chrome

全部标签

javascript - Chrome DevTools 扩展 : how to get selected element from elements panel in content script?

我已经完成研究并为此苦苦挣扎了一段时间,但我需要您的帮助。我正在构建一个ChromeDevTools扩展。它应该将当前从“元素”面板中选择的元素作为引用传递给内容脚本中定义的JS对象。重要的是我将引用传递给所选元素,或通过其他方式从内容脚本中识别元素。我了解ChromeDevTools中“孤立世界”的工作流程。我还了解扩展页面、背景页面和内容脚本之间的消息传递。这只发生在JSON基元上,因此没有JS范围传递。如何将在devtools元素面板中选择的元素传递给位于被检查页面中的内容脚本?编辑这是我目前所知道的:获取对所选元素的引用:chrome.devtools.inspectedWin

javascript - 从 chrome 开发者控制台调用 javascript 函数

这个问题在这里已经有了答案:CallingaJavascriptFunctionfromConsole(6个答案)关闭1年前。非常简单的脚本:functionfoo(){return"bar"}console.log(foo());控制台:>bar//sanitytestthatproveseverything'sworking>foo();//thisguyiskey!>ReferenceError:fooisnotdefined我应该如何调用foo();用于调试和实验目的?这不是练习吗?我喜欢使用IRB/Rails控制台来验证我的ruby​​代码,并且想用JavaScript做同样

javascript - 如果您在 Chrome 的控制台中尝试 9n**9n**9n,Chrome 会中断(类似于无限循环)。为什么会这样?

如果您在Chrome的控制台中尝试9n**9n**9n,Chrome就会中断(类似于无限循环)。V8引擎是否缺少针对这种情况的实现?我的意思是,如果您尝试9**9**9,它将返回Infinity,这很不错。为什么V8在前一种情况下不返回Infinity?为什么它似乎进入了无限循环?我在Firefox中也试过了,这个问题不存在,因为目前SpiderMonkey中没有BigInt实现。谢谢! 最佳答案 如前所述,9n是9的BigInt表示。**(幂)运算符从右到左工作,导致结果快速升级:2n**2n**2n===2n**4n===16n

javascript - 如何让chrome忘记页面滚动位置?

例如,我打开一个网页,然后向下滚动到某个位置,然后我刷新chrome浏览器,浏览器又可以滚动到之前的位置了如何使用javascript或css让浏览器忘记滚动?我尝试了$(window).scrollTop(0),但它不起作用 最佳答案 在下面的问题中解决了。Disablebrower'sautoscrollafterapagerefresh?//bypassautoscrolling.if('scrollRestoration'inhistory){history.scrollRestoration='manual';}

javascript - 来自 background.js 的内容脚本中的 Chrome 调用函数

我已经阅读了文档,但仍然无法正常工作。这是我的list:{"name":"app","version":"0.1","manifest_version":2,"description":"app","background":{"scripts":["scripts/modernizr.min.js","scripts/background.js"],"persistent":false},"content_scripts":[{"matches":["https://*/*","http://*/*"],"js":["scripts/content.js"],"run_at":"doc

javascript - 如何在 IE、FF、Chrome 等上可靠地设置类 attr w/JavaScript?

我正在使用下面的JS代码,以便在单击链接时更改类。document.getElementById("gifts").setAttribute("class","gkvSpriteselected");这在IE中不起作用,但在FF和Chrome中有效。然后我将代码更改为:document.getElementById("gifts").setAttribute("className","gkvSpriteselected");然后它在IE中工作,但在FF和Chrome中停止工作。有人可以帮帮我吗? 最佳答案 您可以可靠地使用class

javascript - Chrome 内容脚本不工作 : DOMContentLoaded listener does not execute

我正在尝试编写可纠正1个论坛上拼写错误的扩展程序。我正在尝试访问标签,带有内容脚本,但它不会改变任何东西(使用下面的代码):document.addEventListener("DOMContentLoaded",function(){document.getElementsByTagName("P")[4].innerHTML="correct_word";});作为扩展添加时它不会改变任何东西,显然如果我wget该页面,并将脚本放在那里,一切正常。有什么想法吗?我的manifest.json文件:{"manifest_version":2,"name":"Extension","d

javascript - 如何使用 Chrome 开发者工具保留 CSS 更改

我正在尝试调试下拉菜单。我还没有访问该网站的权限,所以我试图通过GoogleChrome开发者工具找到一个解决方案,我可以测试该解决方案,然后在我获得访问权限时将其应用于该网站。这只是CSS和一些Javascript更改。问题是我想通过开发工具应用一些新的CSS样式规则,但这些规则在刷新网页时仍然存在。有没有一种方法可以应用样式并让它们持久存在?我查看了资源部分,哪种建议我可以做这样的事情(也许通过添加本地样式表作为资源?),但我就是不知道该怎么做。有人能给我指出正确的方向吗?非常感谢大家... 最佳答案 您可以安装Tampermo

javascript - 如何在 Chrome 扩展中使用给定的字符/键码初始化键盘事件?

我正在开发一个模拟网页上键盘事件的GoogleChrome扩展程序。我发现event.initKeyboardEvent()不能正常工作因为thiswebkitbug我还找到了一些解决方法,例如SOQuestion但是,在事件对象上定义属性是行不通的,因为扩展的内容脚本有自己的“平行世界”,所以在内容脚本中定义的属性对网页脚本不可见。我唯一也是最后的希望,DOM4事件构造函数可以在GoogleChrome中运行,并且可以通过构造函数正确初始化键盘事件varevent=newKeyboardEvent("keypress",{key:'U+0041',char:'a',...})不幸的是

javascript - Chrome 扩展上下文菜单 : how to append div to page after clicking menu item

尝试构建Chrome扩展程序。目前,我已经整理了一个上下文菜单项。单击上下文菜单项时,它会在我的后台脚本context_menu.js中触发itemClicked():functionitemClicked(info,tab){alert("clicked");}警报触发。我还可以做一些事情,比如通过itemClicked()发送ajax请求但是,我无法将任何元素附加到页面(或任何类型的DOM操作)。即使像这样基本的东西也不起作用:vard=document.createElement('div');d.setAttribute("css","width:100px;height:10