Подтверждается ли noscript браузерами с поддержкой javascript? - PullRequest
2 голосов
/ 07 ноября 2008

Я пытаюсь ужесточить наш рекламный код, переместив его во внешний сценарий jQuery, но мне, очевидно, все еще нужен HTML-код для таргетинга рекламы. Поэтому мне было интересно, могу ли я нацелить элемент noscript (или внутри элемента noscript), так как мне все равно придется оставить его на странице, или мне нужно иметь какой-то другой элемент для JavaScript для нацеливания?

<noscript>
  <div class="ad"><a href="foo"><img src="bar" alt="ad" /></a></div>
</noscript>

Мое намерение было бы изменить или удалить элемент noscript.

Ответы [ 6 ]

6 голосов
/ 07 ноября 2008

<noscript> содержимое не только не отображается, когда JS активен, но, по-видимому, также отсутствует в DOM. Я попытался получить доступ к контенту внутри области <noscript> (надеясь, что вы сможете clone() сделать это с помощью jQuery и вставить его куда-нибудь еще), но ничего не получил.

3 голосов
/ 07 ноября 2008

Вы можете использовать элементы noscript.

    <noscript>asdfasFSD</noscript>

    <script>
        alert(document.getElementsByTagName("noscript")[0].innerHTML);
    </script>

Это работает в FF3, IE6 и Google Chrome. Это предупредит меня как asdfasFSD.

2 голосов
/ 07 ноября 2008

Зачем вам нужен элемент noscript? Если вы просто собираетесь удалить или заменить его другими элементами при запуске javascript, тогда div действует в любом случае так же, как элемент noscript.

1 голос
/ 07 ноября 2008

Большинство браузеров не позволят вам настроить таргетинг на элемент noscript, даже если вы (неправильно) дадите ему идентификатор. Вы можете попробовать что-то вроде http://dev.opera.com/articles/view/replacing-noscript-with-accessible-un/ - это стандартный совместимый метод для достижения той же цели, но без тега noscript.

1 голос
/ 07 ноября 2008

Если в браузере включена поддержка JavaScript, содержимое элемента no-script НЕ отображается.

Вам нужно было бы поставить его вне этого для таргетинга javascript и использовать раздел NoScript для своих целей, для пользователей без JavaScript.

0 голосов
/ 07 ноября 2008

Вы всегда можете использовать JS, чтобы скрыть это объявление с помощью CSS, если ничего больше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...