Javascript 最后一个元素类名未在jQuery中输出
我的HTML 预期产出——第104项 当前输出-未定义 让我知道我做错了什么:(Javascript 最后一个元素类名未在jQuery中输出,javascript,jquery,Javascript,Jquery,我的HTML 预期产出——第104项 当前输出-未定义 让我知道我做错了什么:( Fiddle-此指的是窗口、全局范围,而不是HtmlElement 试试这个: if( jQuery("ul.nav.menu > li").is(':last-child') ) { var classes = jQuery(this).attr('class'); alert(classes); //expected output - item-104 //getti
Fiddle-
此
指的是窗口、全局范围,而不是HtmlElement
试试这个:
if( jQuery("ul.nav.menu > li").is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
//expected output - item-104
//getting undefined
}
var lastElem = jQuery("ul.nav.menu > li:last-child");
var classes = lastElem.attr('class');
console.log(classes);
还要注意,只要导航菜单中有
li
,这个jQuery(“ul.nav.menu>li”)就是(“:last child”)
将始终返回true。这个
指的是窗口、全局范围,而不是HtmlElement
jQuery(jQuery("ul.nav.menu > li:last-child")).attr('class');
试试这个:
if( jQuery("ul.nav.menu > li").is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
//expected output - item-104
//getting undefined
}
var lastElem = jQuery("ul.nav.menu > li:last-child");
var classes = lastElem.attr('class');
console.log(classes);
还请注意,只要导航菜单中有一个li
,这个jQuery(“ul.nav.menu>li”).is(“:last child”)
将始终返回true
jQuery(jQuery("ul.nav.menu > li:last-child")).attr('class');
因为this指向窗口对象或其他元素。if语句不会像
each()
中的回调那样神奇地改变其作用域。只需创建一个选择器,获取最后一个元素,然后读取其类
jQuery("ul.nav.menu li").each(function() {
if( jQuery(this).is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
}
});
因为this指向窗口对象或其他元素。if语句不会像
each()
中的回调那样神奇地改变它的作用域。只需创建一个选择器来获取最后一个元素,然后读取它的类
jQuery("ul.nav.menu li").each(function() {
if( jQuery(this).is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
}
});
试试这个:
if( jQuery("ul.nav.menu > li").is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
//expected output - item-104
//getting undefined
}
var lastElem = jQuery("ul.nav.menu > li:last-child");
var classes = lastElem.attr('class');
console.log(classes);
此
引用当前范围中的元素,而不是最后一个子元素li
请尝试以下操作:
if( jQuery("ul.nav.menu > li").is(':last-child') ) {
var classes = jQuery(this).attr('class');
alert(classes);
//expected output - item-104
//getting undefined
}
var lastElem = jQuery("ul.nav.menu > li:last-child");
var classes = lastElem.attr('class');
console.log(classes);
if (jQuery("ul.nav.menu > li").is(':last-child')) {
var classes = jQuery("ul.nav.menu > li:last").attr('class');
alert(classes);
}
此
引用当前范围中的元素,而不是最后一个子元素li
if (jQuery("ul.nav.menu > li").is(':last-child')) {
var classes = jQuery("ul.nav.menu > li:last").attr('class');
alert(classes);
}