Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Является ли атрибут событием?
 
 автор: Denis_Gorby   (03.03.2006 в 00:01)   письмо автору
 
 

Здравствуйте.

Возникла следующая ситуация: мне необходимо пройтись по аттрибутам объекта и что-то с ними сделать, но только в том случае, если аттрибут является свойством (width, height etc), а не событием (onclick, onmouse etc)

for (var attrIndex = 0; attrIndex < control.attributes.length; attrIndex++)
{
if (IsEvent(control.attributes[attrIndex])) continue;

MadeThisWorldHappy();
}

Никак не соображу, как мне понять, что аттрибут является событием. Проверять наличие в начале букв on я смогу, но нет ли более надежного и легального способа? Хотя бы для IE ?

Заранее спасибо,
Денис

   
 
 автор: 12345   (03.03.2006 в 01:33)   письмо автору
 
   для: Denis_Gorby   (03.03.2006 в 00:01)
 

Если они объявлены, то представляют собой функции ( typeof(...)=='object'&&(...).toString().indexOf('function')==0 ), если нет, то null / undefined (в зав. от бр.) , и ничего больше.

   
 
 автор: Denis_Gorby   (03.03.2006 в 09:53)   письмо автору
 
   для: 12345   (03.03.2006 в 01:33)
 

( typeof(...)=='object'&&(...).toString().indexOf('function')==0 )

Извините, а что подразумевается под (...)?

Если control.onclick, например, то я и так знаю, что это является событием. Если control.attributes[attributeIndex], то у него нет метода toString().

Спасибо.

   
 
 автор: 12345   (03.03.2006 в 13:11)   письмо автору
 
   для: Denis_Gorby   (03.03.2006 в 09:53)
 

(...) - это то, о чём мы говорим, о ссылке на атрибут объекта, который может быть обработчиком события.

Если нет такого метода, то это не функция, таким образом, узнаём, какие из атрибутов - функции. Но определить, обработчик ли это события, не можем, потому что любому атрибуту можем присвоить функцию. Т.е, точнее, условие поиска функций будет

( typeof(...)=='object'&&(...).toString()&&(...).toString().indexOf('function')==0 )

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования