<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>
请参阅,我正在关注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]
答案 0 :(得分:8)
除了将整个面板与textarea隐藏在其中之外,还需要确保textarea本身具有display:none
,然后问题就会消失。否则wmd将不会检测到textarea没有显示,并将尝试对其进行计算,您将获得像您所说的异常。
简单地将元素放在屏幕外是不可能的,或者至少对某些布局非常麻烦。此外,屏幕阅读器仍将检测到这些元素,并且可访问性将受到影响。
我猜你现在已经解决了这个问题,但我希望它会帮助别人。
答案 1 :(得分:3)
如果插件不喜欢没有高度/宽度的元素,你可以使用左外技术。
<div style="position: absolute; left: -1000px; width: 100px">