Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как использовать innerText (https://javascript.ru/forum/misc/3226-kak-ispolzovat-innertext.html)

yvarvara 30.03.2009 14:37

Как использовать innerText
 
Здравствуйте! Подскажите, почему не работает мой файл! Мне нужно менять содержимое div.
<html>
<head><script language="JavaScript">
var utObject = document.all["ut"];
var str = utObject.innerText;
utObject.innerText = "На март 2009 от родителей поступило 130";
</script></head><body>

На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций. К настоящему времени проведено 50 консультаций на дому. Всего с начала года мы провели 310 консультаций на дому.
<p >ssdggsgss</p>
<marquee scrolldelay="100" behavior="slide" width="500" bgcolor="#ff9900" height="20">1234</marquee>
<p id="ut">hlhhl</p>
</body>
</html>

Dknight 30.03.2009 14:45

Попробуй вместо document.all["ut"]; использовать getElementById();
ну или вместо innerText, innerHTML, хотя последнее может и не обязательно.
utObject.innerHTML = 'На март 2009 от родителей поступило 130';
примерно так.
Плюс попробуй это сделать c элементом span. С ним должно прокатить.

AzriMan 30.03.2009 14:58

1. оформляйте код в соответствующих тегах.

2. вообще-то это нормальное поведение. Вы пытаетесь обратиться к элементу "ut", который на момент выполнения скрипта еще не существует.

3. вместо document.all["ut"] используйте document.fetElementById("ud");, как и было посоветовано выше.

4. метод innerText, если я не ошибаюсь, может работать не во всех браузерах. рекомендовано использовать innerHTML.

5. вы пишете, что вам нужно менять содержимое div, в то время, как, id="ut" принадлежит тегу P. это мелочи, исправление описанного выше должно привести к тому, что это будет работать с тегом Р.

2.1. попробуйте сделать вставку с кодом <script> после того, как используемые в них объекты будут существовать.

yvarvara 30.03.2009 14:59

Спасибо!
 
Спасибо! К сожалению, не получается. span пробовала, utObject.innerHTML пробовала, getElementById пробовала...
Что-то я делаю не так...

AzriMan 30.03.2009 15:00

http://javascript.ru/forum/misc/3226...html#post15481

yvarvara 30.03.2009 17:29

Спасибо! Получилось!
 
Большое-пребольшое Вам спасибо! Все получилось после вставки js в конце документа! В Firefox тоже заработало - потому что написала innerHTML вместо innerText! Спасибо!

AzriMan 30.03.2009 17:51

Пожалуйста. Обращайтесь еще. И, на будущее, не забывайте оформлять код в соответствующих тегах, которые доступны и кликабельны при написании текста темы/ответа

yvarvara 30.03.2009 21:55

Бегущая строка
 
У меня еще вопрос. К сожалению, я не поняла, что значит оформлять код в соответствующих тегах. Я тут новичок. Что я делаю неправильно?
Вообще у меня такая задача: чтобы текст в бегущей строке каждый раз менялся (брался из массива). Вообще возможно ли это с тегом marquee? Если нет, как еще это можно сделать? Вот код файла, который я для этого составила. Заранее спасибо!

<html>
<head></head><body>
<marquee id="ut" scrolldelay="100" width="500" bgcolor="#ff9900" height="20"></marquee>
<script language="JavaScript">
var set = ["На март 2009 от родителей поступило 130 просьб на проведение домашних консультаций.","К настоящему времени проведено 50 консультаций на дому.","Всего с начала года мы провели 310 консультаций на дому."];
var utObject = document.getElementById("ut");
var m=0;
function change (m) {utObject.innerHTML = set[m];
m=1-m;};
setInterval (change(m), 5000);
</script>
</body>
</html>

AzriMan 31.03.2009 09:56

у меня настоятельная просьба перенести обсуждение нового вопроса в новую тему.
а оформление - это кнопочки

мне казалось, на этом форуме интуитивно понятный UI.

x-yuri 01.04.2009 03:06

у бегущей строки определенные проблемы с юзабилити (http://en.wikipedia.org/wiki/Marquee...ility_problems). Ее не рекомендуется использовать

Kolyaj 01.04.2009 08:59

Цитата:

Сообщение от x-yuri
у бегущей строки определенные проблемы с юзабилити

Еще с раздражительностью :)

yvarvara 01.04.2009 12:13

Спасибо, посмотрю!

yvarvara 01.04.2009 12:15

Вообще я ее и не буду использовать. Мне помогли сделать бегущую строку без marquee

Kolyaj 01.04.2009 12:27

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

AzriMan 01.04.2009 12:43

Цитата:

Сообщение от yvarvara (Сообщение 15699)
Вообще я ее и не буду использовать. Мне помогли сделать бегущую строку без marquee

мне кажется, или Вы сперва говорите, что не будете её использовать (я правильно понимаю, её-бегущую строку?), а потом говорите что Вам помогли сделать ..

одно, как-бы, немного не соответствует другому..

yvarvara 01.04.2009 13:15

AzriMan, я не буду использовать тег marquee, а бегущую строку мне сделать все-таки надо. Я взяла скрипт бегущей строки с одного сайта и пытаюсь его переделать. В нем просто по буквам появляется текст, а мне нужно, во-первых, чтобы он, когда весь появился, побыл еще немного весь виден. А во-вторых, чтобы текст каждый раз менялся.
Извините, если я Вам морочу голову. Если Вы еще можете мне помочь, посмотрите, пожалуйста, мой новый вопрос.

yvarvara 01.04.2009 13:36

Kolyaj, просто меня попросили сделать заказчики. Им такое нравится.

_virus_ 04.11.2009 15:00

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

<html>
<head><title>Новый год...</title>
</head>
<SCRIPT LANGUAGE="JAVASCRIPT">
function time() {
today = new Date();
BigDay = new Date("january 01, 2010")
msPerDay = 24 * 60 * 60 * 1000 ;
timeLeft = (BigDay.getTime() - today.getTime());
e_daysLeft = timeLeft / msPerDay;
daysLeft = Math.floor(e_daysLeft);
e_hrsLeft = (e_daysLeft - daysLeft)*24;
hrsLeft = Math.floor(e_hrsLeft);
minsLeft = Math.floor((e_hrsLeft - hrsLeft)*60);
e_msecleft = (timeLeft - (daysLeft*86400000 + hrsLeft*3600000 + minsLeft*60000));
secLeft = Math.floor(e_msecleft/1000);
msecleft = Math.floor((e_msecleft - secLeft*1000)/10);
if(daysLeft > -1)
vrema.innerHTML = "До нового года осталось: дней: "+daysLeft+" | часов: "+hrsLeft+" | минут: "+minsLeft+" | секунд: "+secLeft+" | миллисекунд: "+msecleft+"";
else
vrema.innerHTML = "Администрация чата поздравляет вас с новым годом!!!";
setTimeout("time()",1000) }
</SCRIPT>
<body onload="time()">
<div id=vrema></div>
</body>
</html>

_virus_ 04.11.2009 15:03

Извеняюсь, в фаирфоксе он работает

_virus_ 04.11.2009 15:05

И ещё хотел бы попрасить сделать чтобы отбражалось к примеру осталось 54 дня,1 день,15 дней и тагже минуты и секунды.
Заранее спасибо :)

_virus_ 05.11.2009 16:48

Мне ктонить поможет?

x-yuri 05.11.2009 17:31

поможет: нормальное оформление своего кода (тэг js формуа, отступы), книжка по Javascript (Флэнеган), отладчик и желание научиться программировать ;)

_virus_ 06.11.2009 09:40

А для чего тогда этот форум нужен, чтоб всем говарить что есть книжка обучения javascript. Тогда можно форум закрыть и посередине экрана сделать надпись, на этом форуме не чё неспрашивайте, всё читайте в учебнике по javascript

Riim 06.11.2009 09:49

_virus_, форум нужен для обмена опытом и помощи новичкам в изучении языка. Изучать язык вы явно не хотите, взяли готовый скрипт и хотите что бы кто-то за вас его дописал. Бесплатно чужую работу никто делать не хочет. Если хотите сами его дописать и что-то не понятно, спрашивайте, но более конкретно, если готовы платить, то специально для вас есть раздел работа.

А когда закрывать форум здесь без вас решат.

Kolyaj 06.11.2009 09:50

Цитата:

Сообщение от _virus_
А для чего тогда этот форум нужен

http://phpclub.ru/faq/WhyForum

_virus_ 07.11.2009 07:11

Цитата:

Сообщение от Riim (Сообщение 34663)
_virus_, форум нужен для обмена опытом и помощи новичкам в изучении языка. Изучать язык вы явно не хотите, взяли готовый скрипт и хотите что бы кто-то за вас его дописал. Бесплатно чужую работу никто делать не хочет. Если хотите сами его дописать и что-то не понятно, спрашивайте, но более конкретно, если готовы платить, то специально для вас есть раздел работа.

А когда закрывать форум здесь без вас решат.

ТОгда подскажите мне пожалуйсто, я немогу понять, почему там миллисекунды нещитает. Щитает только если обновляешь страницу.

x-yuri 07.11.2009 07:24

> поможет: нормальное оформление своего кода (тэг js формуа, отступы), книжка по Javascript (Флэнеган), отладчик и желание научиться программировать

PepeL 07.11.2009 12:26

Администрации чатов уже ничего не поможет :)

Virus, ты время выводишь каждую секунду поэтому миллисекунды и не показывает. Если хочешь чтобы отображались и миллисекунды так и выводи каждую милисекунду.

setTimeout("time()",10)

_virus_ 08.11.2009 10:09

PepeL,
Всё работает :) Спасибо те!

PepeL 09.11.2009 05:54

Всегда пожалуйста :)


Часовой пояс GMT +3, время: 05:07.