1

大家好,我有这样的情况

<div class="todos-pedidos" title="/pedidos">See More</div>

单击此 div 时,使用此 jquery 展开我的 UL / LI

$('.todos-pedidos').click(function() {
$('#bloco-pedidos-andamento ul li:hidden:lt(2)').slideToggle();

if( ! $('#bloco-pedidos-andamento ul li').is(':hidden') )
    $('.todos-pedidos').html("<span class='todos-pedidos2'>See All</span>");
return false;

当没有更多 LI 展开按钮时,更改 div 文本

所以我尝试在更改文本后查看更多内容以查看所有内容,如果访问者再次点击此转到 url

我试过这样,但我认为有一些错误或冲突,链接打不开

$("span.todos-pedidos2").click(function(event){
    event.preventDefault(); 
    var link = $('.todos-pedidos').attr("title");
    location.href=link;
});

谢谢你的帮助

4

2 回答 2

1

当您使用 JavaScript 生成元素时,您应该从元素或文档对象的静态父对象之一委托事件。

$(".todos-pedidos").on('click', 'span.todos-pedidos2', function(event){
// or $(document).on('click', 'span.todos-pedidos2', function(event){
于 2012-11-10T22:07:37.177 回答
1

jQuery 中的click方法适用于始终存在的 DOM 元素。动态添加的元素应使用该on方法添加事件处理程序:

$("span.todos-pedidos2").on('click', function(event) { });
于 2012-11-10T22:09:08.470 回答