我想在这段代码中添加一个图标菜单来扩展列表,但是当点击它的时候,它显示的是代码而不是图标,第一个图标在加载的时候显示出来,但是当你点击javascript函数的时候,它会写代码而不是显示span图标。
这是密码:
$(".readMore").click(function () {
$(this).text(function(i, v) {
return v === '<span class="glyphicon glyphicon-menu-down"></span> show all brands' ? '<span class="glyphicon glyphicon-menu-up"></span>hide' : '<span class="glyphicon glyphicon-menu-down"></span> show all brands'
})
})
1条答案
按热度按时间xzlaal3s1#
您试图将span元素作为字符串包含在类"glyphicon glyphicon-menu-down"中,但它被解释为常规文本,因此需要将其 Package 在jQuery元素中,以便将其视为HTML元素。
尝试更改以下行:
$(this). text(函数(i,v){return v ===显示所有品牌?v隐藏:显示所有品牌})
致:
$(this). html(函数(i,v){return v ==='显示所有品牌'?v:'显示所有品牌'});
此外,您在代码中有一个打字错误,"v hide"应该是"v","hide"应该是单独的。
因此,最终更正代码将为:
$(". readMore"). click(函数(){$(此). html(函数(i,v){return v ==='显示所有品牌'?v:'显示所有品牌'});});
每次单击时,它都会更改元素内部的html并显示图标。