Я хотел бы знать, можно ли обработать код в конкретной функции javascript, которая вызывается во время загрузки страницы в фоновом режиме.

То есть сервер отправляет браузеру несколько ярлыков и текстовых полей. Во время загрузки вызывается функция, которая немедленно скрывает их. Но я вижу, что из-за его использования при загрузке текстовые поля сначала отображаются в браузере, а затем скрываются (после того, как все остальное на странице было загружено).

Есть ли способ избежать этого?

Благодарность!

0
user355562 4 Июл 2010 в 14:15

2 ответа

Лучший ответ

Если эти элементы необходимо скрыть при загрузке страницы, скройте их, применив стиль display: none css на стороне сервера. Позже, когда их нужно будет показать, используйте javascript.

2
Darin Dimitrov 4 Июл 2010 в 10:19

Вам нужно скрыть эти элементы либо с помощью JS-кода, размещенного сразу после них.

<textarea id="a"></textarea>
<script type="text/javscript">
document.getElementById('a').style.display = 'hidden';
</script>

… Или (обычно лучше), когда DOM готов

document.addEventListener('DOMContentLoaded',function(){
    document.getElementById('a').style.display = 'hidden';
},false);

Существует проблема совместимости со вторым способом - IE не поддерживает метод addEventListener, и вам необходимо использовать другой код, как описано здесь: http://www.javascriptkit.com/dhtmltutors/domready.shtml

0
J. K. 4 Июл 2010 в 13:40