我正在尝试创建一个书签,它将在网页上的文本区域中插入一些文本(网页供内部使用,因此没有链接的意义)。
这是我尝试过的 JavaScript 代码示例:
(function(){document.getElementById("textareaID").value="Some text";})();
Run Code Online (Sandbox Code Playgroud)
我想指出的是,我尝试了不同的元素选择器(byClass、查询...)和不同的属性(甚至 tabindex)以获得相同的结果。还在 Chrome 和 IE11 中进行了尝试。
因此,出于某种奇怪的原因,当我从控制台(或作为片段)运行它时,我的 JavaScript 会运行,但当我尝试从书签菜单运行它时,我收到错误“无法设置 null 的属性‘值’”。
我尝试自己创建一个书签
javascript:(function(){document.getElementById("textareaID").value="Some text";})();
Run Code Online (Sandbox Code Playgroud)
并尝试使用在线书签创建器对特殊字符进行编码
javascript:(function(){document.getElementById(%22textareaID%22).value=%22Some%20text%22;})();
Run Code Online (Sandbox Code Playgroud)
但没有运气。
小书签肯定可以在页面上使用(尝试使用警报“Hello”),但我似乎在“捕获”元素时遇到问题。我还注意到某些元素的 ID 有时会发生变化(但不确定为什么),但我总是检查以确保我尝试使用的 ID 存在,或者我使用一些固定值,如 tabindex。此外,正如我所说,它在从控制台运行时有效,所以我不可能以某种方式搞砸它......或者我可以吗?