Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Java / JavaScript


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Java/JavaScript

Выпуск № 451
от 19.10.2007, 14:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 363, Экспертов: 29
В номере:Вопросов: 1, Ответов: 2


Вопрос № 105412: Здравствуйте! Я в скриптах очень плохо разбираюсь и очень давно не имел с ними не имел дела. И несколько смутила одна весчь - свойство text объекта element. Я пробовал в трех разных браузерах, и во всех трех работает по разному. В Опере р...

Вопрос № 105.412
Здравствуйте!
Я в скриптах очень плохо разбираюсь и очень давно не имел с ними не имел дела. И несколько смутила одна весчь - свойство text объекта element.
Я пробовал в трех разных браузерах, и во всех трех работает по разному.
В Опере работает:
document.getElementById ("id_1").innerText = "hallo";
document.getElementById ("id_1").text = "hallo";
document.getElementById ("id_1").textContent = "hallo";
В Мозилле работает:
document.getElementById ("id_1").textContent = "hallo";
В IE работает:
document.getElementById ("id_1").innerText = "hallo";

Как сделать так, чтобы работало во всех трех? :) И как должно быть по стандарту?

И еще вопрос. Нужно из скрипта открыть окно. Делаю так:
window.open ("http://ya.ru");
Но в IE новое окно открывается в том же, а нужно в новом
В описании функции не нашел параметра для открытия в новом окне, на дев. сайте мозиллы рекомендуют так:

но мне ссылка не подходит, мне нужно из скрипта запустить...
Спасибо
Отправлен: 14.10.2007, 14:03
Вопрос задал: estiGi (статус: Студент)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Иоффе Мэир Вэлевич
Здравствуйте, estiGi!

Я сталкивался с проблемой innerText.
К сожалению не нашёл лучшего решения чем (надеюсь, что эксперты подскажут):

if(document.getElementById ("id_1").innerText)
{
document.getElementById ("id_1").innerText = "hallo";
}
else
if(document.getElementById ("id_1").text)
{
document.getElementById ("id_1").text
}
else
if(document.getElementById ("id_1").textContent)
{
document.getElementById ("id_1").textContent = "hallo";
}
а вот про то что window.open открывается в IE в том же окне, реально слышу впервые...
Вы знаете, только что проверил в IE6, IE7, FireFox, Opera и Safari и открылось в новом окне, как и положено....
Если же Вы имеете в виду, что окно открывается в новой вкладке, то это настройки Ваших браузеров.

Удачи.
---------
There are 10 types of people. Those who understand binary and those who don't.
Ответ отправил: Иоффе Мэир Вэлевич (статус: 2-ой класс)
Ответ отправлен: 15.10.2007, 00:22
Оценка за ответ: 5
Комментарий оценки:
Насчет текста элемента - да, примерно так и пришлось делать ((
А с ссылкой это я протупил .... Я тестировал несуществующую ссылку (она основывалась на referrer, и с локальной страницы адреса referrer'а, естессно, не существовало).
И window.open с несуществующей ссылкой в ИЕ не открывала новое окно. Мне совершенно случайно пришло в голову подставить реальный адрес и протестить )))

Отвечает: PM_pilot
Здравствуйте, estiGi!
Вообще если говорить о стандартах то IE довольно своебразно воспринимает не MS стандарты. В Вашем случае можно использовать поле innerHTML елемента работает точно под FF и IE v6 (для оперы не могу сказать так как сейчас под нее не пишу) или писать код для определения броузера например вот -
http://www.pageresource.com/jscript/jbrowse.htm
Относительно window.open здесь http://w3schools.com/htmldom/met_win_open.asp все параметры этого метода. Если есть проблеми с английским пишите помогу.
Ответ отправил: PM_pilot (статус: 1-ый класс)
Ответ отправлен: 15.10.2007, 19:08
Оценка за ответ: 5
Комментарий оценки:
Да, я знаю о любви МС к стандартам ))
Насчет window.open я уже говорил - это я сам облажался, но спасибо за ссылки.


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.61.1 от 16.10.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное