历史评论归档

使用问题 · 285 次浏览
197906+abcd张三 创建于 2020-04-01 16:45
~历史讨论归档。~

回复内容
small_snail 2020-06-19 13:06
#1

请教一下大佬,我在WOS页面用了个子程序结果没有反应,参数是: document.querySelector("#value\\(input1\\)").value=测试;

然后我手动去把代码粘贴到地址栏中,发现同样是没有反应,还发现只有给value赋值为数字的时候才会达到目的:给检索栏填写内容


接着,我又多做了一点测试,发现在chrome开发者工具的console中输入下面代码时能达到目的:

 document.querySelector("#value\\(input1\\)").value='测试';


但是这个代码在地址栏输入就不行了,会变成下面这样:


请问这是为什么呢,有没有办法解决呢?不太想在console中输入代码,因为这样的话给用户的干扰比较多

small_snail 回复 small_snail 2020-06-19 14:45 :

感谢大佬在群里的指教,我来自问自答一哈(其实只是把大佬在群里的答案搬过来😅😅)。

之所以会出现同样代码在console正常执行,但在地址栏异常,是因为当有一个赋值操作的时候,除了这一个操作,js还会将这个值作为返回值,这个字符串返回值会成为整个页面的值,这个行为和data:text/plain,hello world 或 javascript:"hello world"是一样的,所以当你最后给了下列返回值时,这个行为就会消失
0
false
[]
null
undefined

small_snail 2020-06-19 16:01
#2

好像有1个会导致不太稳定的地方(如下图),粘贴前后的时间是0,当动作比较简单的时候试着没问题,但是有个稍微长点的动作,总是在向地址栏发送文本时出问题,我把它调整成默认的50、10之后就没啥问题了


mk 2020-11-18 23:18
#3

请教一下。 这个子程序是不是就可以做到浏览器插件所能做的事情了?

darcyc 回复 mk 2020-12-03 19:24 :

部分操作无法做到,如读取收藏夹等敏感操作。

回复主贴