Что делать, если после проверки, как утверждается, действительный объект возвращает 'undefined' для любого исследуемого атрибута? Я использую jQuery, $('selector').mouseover(function() { });
Все возвращает 'undefined' для $(this)
внутри области функции. Селектор является 'area' для тега карты, и я ищу его родительские атрибуты.
Как выполнить самообследование JavaScript-объектов?
Ответ 1
Ваш вопрос немного расплывчатый, так что, возможно, вы можете предоставить более подробную информацию?
Что касается определения объекта и значений его свойств, есть много способов сделать это, включая использование Firebug или некоторых других инструментов отладки и т.д. Вот быстрая и грязная функция, которая может помочь вам начать работу до тех пор, пока вы можете предоставить более подробную информацию:
function listProperties(obj) {
var propList = "";
for(var propName in obj) {
if(typeof(obj[propName]) != "undefined") {
propList += (propName + ", ");
}
}
alert(propList);
}
Это отобразит список свойств объекта, который вы передаете, который не является undefined
.
Надеюсь, что это поможет...
Ответ 2
Является ли selector
именем элемента? Если это так, вы должны ссылаться на него как:
$('area#selector')
или
$('#selector')
в противном случае он попытается найти (несуществующий) "селектор" HTML-тег и, очевидно, не найти его.
Ответ 3
Хотя этот ответ немного запоздал, я по-прежнему рекомендую проверить эти ссылки:
http://www.webweavertech.com/ovidiu/weblog/archives/000317.html
http://www.syger.it/Tutorials/JavaScriptIntrospector.html