bookmarklet:用js将文本插入textarea?

mat*_*att 4 javascript bookmarklet

嘿伙计们,不知道我做错了什么?

javascript:document.getElementsByTagName('textarea').innerHTML='inserted';
Run Code Online (Sandbox Code Playgroud)

我想创建一个bookmarklet,将简单文本插入给定网页上的textarea.

关于亚光

Tim*_*own 6

使用value属性而不是innerHTML确保您的代码求值undefined,您可以通过将其包装在没有return语句的函数中来完成.如果不这样做,页面的内容将被替换为您的代码评估的内容(在这种情况下,字符串'inserted').

javascript:(function() {document.getElementsByTagName('textarea')[0].value = 'inserted';})();
Run Code Online (Sandbox Code Playgroud)

2012年1月14日更新

我没有发现原始代码被document.getElementsByTagName('textarea')视为单个元素而不是NodeList它的事实,所以我用我的代码更新了代码[0].@ streetpc的答案更详细地解释了这一点.