![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| borber |
|
|||
|
Unregistered |
Когда вызываю в скрипте свойство созданного объекта, чтобы его изменить, он это свойство не видит!
Где ошибка? Вот, например, код:
</BODY> Спасибо заранее! |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 1 Всего: 73 |
Вот, ты забыл одну вещь сделать:
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| borber |
|
|||
|
Unregistered |
Так это не то... Фокус-то в том, чтобы ЛЮБОЙ объект, созданный по этому конструктору, позволял манипулировать со своим свойством nadpis. Я пытался вызывать метод this.naezd() - ругается, что "объект не поддерживает метод"...
|
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 1 Всего: 73 |
Я че то не пойму ... ты поьзуешся методами конструктора из других функций вызывая их из объекта, тогда все получается:
Или может я чего не так понял -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| m@kxus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 20.2.2003 Где: Estonia Репутация: нет Всего: 2 |
|
|||
|
||||
| nikolin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 6.7.2003 Где: Варна - Болгария Репутация: нет Всего: 1 |
Метод надо предварително дефинират , впереди конструктора или как тебыа сказали
this.fn_naezd = function my_naezd() { alert(id+'@'+nadpis); }; |
|||
|
||||
| borber |
|
|||
|
Unregistered |
Спасибо, Максим, это буквально то, что надо, прямо в точку! :-)))
Успехов! |
|||
|
||||
| borber |
|
|||
|
Unregistered |
И тебе спасибо, nikolin, тоже интересно. :-) только, правда, все равно не работает... :-)
|
|||
|
||||
| nikolin |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 6.7.2003 Где: Варна - Болгария Репутация: нет Всего: 1 |
Если хочешь узнат более а том как писать <table> динамично в документ ето книга для тебя "Mastering of JavaScript , Perl and CGI"
А что не работает , код Максима |
|||
|
||||
| borber |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 27.9.2003 Репутация: нет Всего: нет |
nikolin, я имел в виду, что не работает мой код, независимо от того, где определяешь метод - до конструктора, после или внутри. Я так и не понимаю, почему нельзя обратиться к свойству объекта через его метод с помощью слова this. Или я совсем чего-то не понимаю?
|
|||
|
||||
| m@kxus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 20.2.2003 Где: Estonia Репутация: нет Всего: 2 |
borber, событие onmouseover в твоём коде возникает при наведении мышиного курсора на ячейку, затем поднимается до таблицы и дальше вверх по модели до уровня document.body. Объект myKnop находится вне DOM и поэтому там не возникает это событие. То есть, в твоей функции naezd, объект this - это не myKnop, а именно ячейка таблицы.
В своём коде я аттачу обработчик события на таблицу, используя его внутри объекта, предварительно объявив его как метод объекта this.fn_naezd = function my_naezd() |
|||
|
||||
| borber |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 27.9.2003 Репутация: нет Всего: нет |
m@kxus, так все-таки как твой код внедрить в нужное место уже имеющейся html-страницы? Чтобы конструктор один раз писался, а объекты потом где надо существовали? Вот это вот: document.body.appendChild(tbl); как изменить?
|
|||
|
||||
| m@kxus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 20.2.2003 Где: Estonia Репутация: нет Всего: 2 |
borber, можно использовать методы insertBefore, insertAdjacentElement, appendChild, appendElement - это для IE. Например, передавать в конструктор параметром ссылку на объект, внутри, после или перед которым нужно вставить новый объект. Далее просто вызываешь в нужном месте конструктор.
Я не могу дать тебе более точного ответа, потому что не знаю, для чего ты собрался применять этот код. Всё зависит от реализации, как ни банально это звучит... |
|||
|
||||
| borber |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 27.9.2003 Репутация: нет Всего: нет |
идея была совершенно простенькая: кнопки навигации на сайте сделать одинаковыми изображениями (всего 2 - _on и _off), различающимися только надписями, и тем самым облегчить страницы (сейчас - каждая кнопка - своя картинка, различается только надписью). Твой код сам по себе работает именно так как надо, но вставить его столько раз, сколько хочу, в те места, куда хочу - не получается у меня. А реализация - да вот на, например, такая страница (чего тут мудрствовать):
Ну, в ячейках таблицы что-то есть... вот как вставить по 1 кнопке в каждую вторую, например, ячейку? |
|||
|
||||
| m@kxus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 20.2.2003 Где: Estonia Репутация: нет Всего: 2 |
|
|||
|
||||
| borber |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 11 Регистрация: 27.9.2003 Репутация: нет Всего: нет |
Круто, m@kxus ! Уважаю! :-) Теперь даже мне понятно. :-))) Спасибо.
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |