|
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 35
|
||||||
Мой первый скипт20.04.2012, 04:01. Показов 1857. Ответов 7
Метки нет (Все метки)
Прочитал недавно самоучитель небольшой, решил сделать скриптик
0
|
||||||
| 20.04.2012, 04:01 | |
|
Ответы с готовыми решениями:
7
Мой первый jQuery
мой первый сайт |
|
463 / 463 / 23
Регистрация: 17.08.2011
Сообщений: 1,488
|
|
| 20.04.2012, 04:16 | |
|
0
|
|
|
16 / 16 / 7
Регистрация: 30.04.2011
Сообщений: 41
|
||||||
| 20.04.2012, 04:32 | ||||||
|
немного отредактировал, пробуйте
0
|
||||||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
|||||||||||
| 20.04.2012, 06:25 | |||||||||||
Сообщение было отмечено как решение
Решение
Попробовали
![]() Запомните на всю оставшуюся жизнь две вещи: ПЕРВОЕ Браузер об элементах страницы узнаёт постепенно, шаг за шагом, вслед за прописанными в HTML-коде тегами и скриптами, начиная с самой первой строки. Прочитал браузер первую вашу строку - <html> - и узнал только то, что открывается документ, написанный на языке HTML. Что там в этом документе имеется - браузеру пока неведомо. Есть ли там скрипты и стили, он пока не знает. Какие именно теги будут на вашей странице - он не знает. Обо всём этом браузер будет узнавать последовательно, строка за строкой. Понятно? ВТОРОЕ Метод document.write () - он работает при разных обстоятельствах по-разному. Когда страница только загружается в браузер и формируется, этот метод ДОписывает на страницу то, что написано в его круглых скобках, в дополнение к тому, что уже есть на странице, и к тому, что ещё на ней будет. А вот когда страница уже вся полностью загружена и сформирована, то метод document.write () эту страницу полностью ПЕРЕписывает, оставляя на на странице только то, что у этого метода в круглых скобках. Всё уничтожается, в том числе и сам скрипт, в котором этот метод document.write () прописан. Ещё раз: постарайтесь уловить разницу между ДОписывать и ПЕРЕписывать. В процессе формирования страницы ДОписывается, после загрузки страницы - ПЕРЕписывается вся страница. Отсюда вывод: использование метода document.write () в каких-либо скриптах/функциях, которые вызываются на текущей сформированной странице - это первый признак того, что скрипт писал полный ньюб ("новичок" по-нашему). ----- Запомнили? Теперь разбираем ваш первый скрипт. Читает браузер заголовок (всё что внутри <head>...</head>) вашего документа. Видит там скриптовой блок <script>...</script>. А в этом блоке видит функцию lala (). Пока всё хорошо. Но вот по завершению текста функции браузер видит ваш приказ - document.getElementById('content').inner HTML = lala(9);, который на русский язык переводится так: прописать внутрь тега с id="content" строку символов, которую должна создать функция lala (), которой в качестве аргумента надо заслать цифру 9. И что делает браузер? Правильно, он запускает функцию lala (9), исполняет её, а потом... потом он впадает в ступор. Потому что он должен присвоить какую-то программную строку символов, сгенерированную этой функцией, а функция lala () никакой строки символов не производит. Функция lala (9) чего-то там напечатала где-то в документе, но ничего программного не сгенерировала. Браузер из ступора выходит и решает эту ожидаемую им строку символов заменить своей собственной строкой - словом undefined, что означает "не определена". И собирается прописать эту строку внутрь тега с id="content". И во второй раз впадает в ступор, потому что браузер на данном этапе НИЧЕГО ЕЩЁ НЕ ЗНАЕТ про тег, у которого есть id="content". Тут уже браузер ничего поделать не может, поэтому он генерит сообщение об ошибке, которую помещает в "Консоль ошибок", а именно "object document.getElementById ('content') not found", что переводится как "объект не найден". ----- Как исправить ДВЕ ваши ошибки? 1. Функция lala () должна не печатать что-то и непонятно где на документе, а должна вернуть нужное значение в виде строки символов. Для этого есть оператор return, который так и переводится - "возвращать". А именно:
Например, можно разместить ещё один скриптовой блок <script>...</script> в любом месте ПОСЛЕ закрывающего тега </div> этого самого тега с id="content", и уже в этом блоке отдавать ваш приказ. Либо можно оформить ваш приказ в существующем скриптовом блоке в виде функции, которая будет запускаться только тогда, когда ВСЯ страница загрузится в браузер и абсолютно ВСЕ теги страницы станут браузеру доступны. Это делается так:
7
|
|||||||||||
|
16 / 16 / 7
Регистрация: 30.04.2011
Сообщений: 41
|
|
| 20.04.2012, 17:23 | |
|
спасибо коллега за подробный ответ. оставляю свой очень плохой код чтобы больше так никто не делал
. да я плохо знаю javascript, но все мы учимся
0
|
|
|
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 35
|
||||||
| 23.04.2012, 05:08 [ТС] | ||||||
|
Извините, долго не мог ответить. Спасибо, всё разжевали
В общем вот такой получился
0
|
||||||
|
супермизантроп
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
|
||||||
| 23.04.2012, 06:36 | ||||||
Пошто детей своих - Артёма и Илью - в интернаты круглосуточные отправили? Лиля у вас работает ночным сторожем при спящей кошке? ![]() Если серьёзно, то используйте ещё и getDay () - вряд ли у вас дети по воскресеньям ходят в школу и садик...
0
|
||||||
|
0 / 0 / 0
Регистрация: 29.02.2012
Сообщений: 35
|
|
| 23.04.2012, 12:33 [ТС] | |
|
Ну, у нас, во Владивостоке всё рано начинается
А разве там время в 24-часовом режиме? У американцев, вроде бы как и у англичан, AM PM. А так это заготовка просто, сделаем ещё.З.Ы. Насчёт кошки- она всё время спит, а если не спит, то жрёт, а если не жрёт то где-то в туалете
0
|
|
| 23.04.2012, 12:33 | |
|
Помогаю со студенческими работами здесь
8
Мой первый видеофильм Мой первый инструмент Мой первый тетрис Мой первый сайт мой первый сайт Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|