<div style="display:none;">
<div id="wmd-editor" class="wmd-panel">
<div id="wmd-button-bar"></div>
<textarea id="wmd-input"></textarea>
</div>
<div id="wmd-preview" class="wmd-panel"></div>
<div id="wmd-output" class="wmd-panel"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
看,我正在关注derobins-wmd的wmd-test.html,除了把那些东西放在一个隐藏的div中.
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLTextAreaElement.selectionStart]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/derobins-wmd-980f687/wmd.js :: anonymous :: line 490" data: no]
uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLTextAreaElement.selectionStart]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: http://localhost/derobins-wmd-980f687/wmd.js :: anonymous :: line 490" data: no]
Run Code Online (Sandbox Code Playgroud)
除了将整个面板与textarea隐藏在其中之外,还需要确保textarea本身已经display:none存在,然后问题就会消失.否则wmd将不会检测到textarea没有显示,并将尝试对其进行计算,您将获得像您所说的异常.
简单地将元素放在屏幕外是不可能的,或者至少对某些布局非常麻烦.此外,屏幕阅读器仍将检测到这些元素,并且可访问性将受到影响.
我想你现在已经解决了这个问题,但我希望它能帮到某个人.
如果插件不喜欢没有高度/宽度的元素,您可以使用左移技术。
<div style="position: absolute; left: -1000px; width: 100px">
Run Code Online (Sandbox Code Playgroud)