Как скрыть редактор wmd изначально? - PullRequest
5 голосов
/ 04 октября 2009
<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>  

Видите, я следую за wmd-test.html derobins-wmd, за исключением того, что помещаю эти вещи в скрытый 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]

Ответы [ 2 ]

8 голосов
/ 05 декабря 2009

Помимо скрытия всей панели с текстовой областью внутри нее, вам необходимо убедиться, что у самой текстовой области есть display:none, и проблемы исчезнут. В противном случае wmd не обнаружит, что текстовое поле не отображается, и попытается выполнить вычисления для него, и вы получите исключения, как вы сказали.

Простое размещение элементов за пределами экрана невозможно или, по крайней мере, очень хлопотно для некоторых макетов. Кроме того, программы чтения с экрана все равно обнаружат эти элементы, и доступность пострадает.

Полагаю, вы уже решили проблему, но надеюсь, она кому-нибудь поможет.

3 голосов
/ 04 октября 2009

Вы можете использовать метод off-left, если плагину не нравятся элементы, не имеющие высоты / ширины.

<div style="position: absolute; left: -1000px; width: 100px">
...