Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Альтернативое отображение... ...при несрабатывании функции JavaScript 
:(
    Опции темы
мухр
Дата 16.8.2005, 06:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 11.8.2005

Репутация: нет
Всего: нет



В связи с ненадёжностью Ява-скрипт, его браузерозависимостью, такой вопрос хочу задать: как сделать, чтобы при вызове какой-нибудь функции (рисование выпадающего меню, к примеру) при условии несрабатывания оставалось какое-нибудь хтмл-содержимое по-умолчанию?
Другими словами, Java-script-функция во время создания каких-то элементов на странице должна "затирать" элементы по-умолчанию, содержащиеся изначально в хтмл-коде страницы.
Как сделать?
PM WWW   Вверх
diam
Дата 16.8.2005, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 348
Регистрация: 23.1.2005
Где: Екатеринбург

Репутация: 6
Всего: 16



Про ненадёжность JavaScript говорить нельзя, ИМХО. Может быть кривая имплементация на отдельных браузерах, но во всех популярных браузерах JavaScript работает одинаково.
Ещё в разнах браузерах могут быть разные объекты с разными методами (например, различия IE и Gecko). Но к JS это прямого отношения не имеет smile.

По теме.
Допустим, есть у нас код HTML
Код

<div id='did'><p>Внутри этого дива размещён какой-то текст, то, что у нас _по_умолчанию_</p></div>

Мы бы хотели написать функцию, которая содержимое div'а чем-то заменяет.
Код

var myFunc() {
  // функция сначала проверяет, поддерживает ли браузер нужные нам методы
  // у нужных нам объектов. Если нет, то выходим. И оставляем содержимое
  // _по_умолчанию_ нетронутым
  if (! (document && document.getElementById && document.getElementById('did'))) return;
}


То есть, если я правильно понял задачу - оставить содержимое без изменения, если браузер что-то там не поддерживает - то решение можно предоставить по такому принципу - не поддерживает, не изменяй.

smile
PM MAIL   Вверх
Aliance
Дата 16.8.2005, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Копай в сторону тега <noscript>
Код

<script>
<!--
alert('это код JS');
// -->
</script>
<noscript>
А это HTML, появляющийся в случае неподдержки или отключения JavaScript
</noscript>

PM MAIL WWW ICQ Skype   Вверх
мухр
Дата 17.8.2005, 04:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 11.8.2005

Репутация: нет
Всего: нет



diam, оговорюсь тогда про ненадёжность ИСПОЛЬЗОВАНИЯ java-скрипт. Отдельная тема: java-скрипт может быть просто выключен в настройках браузера или косячить из-за троянов различных на локальной машине. Короче говоря, ряд причин всё-таки имеется, по которым лучше предусматривать альтернативное отображение.
Задача ясна, спасибо за подсказку.

Aliance, по поводу noscript, наверное, не самый удачный выход. Java-script может быть включен, но не сработать по какому-то внутриннему условию функции. Короче, первый способ, пожалуй, более подходящий.
PM WWW   Вверх
Aliance
Дата 17.8.2005, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Читай мануалы. Если он выключен - то этот тег и сработает.
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0640 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.