2009-05-07 32 views
8

Tôi đang cố gắng thêm sự kiện nhấp chuột vào phần tử LI nhưng nó không kích hoạt trong trang. đánh dấu trang của tôi trông giống như:JQuery - thêm sự kiện nhấp vào các phần tử LI hoặc SPAN?

<div id="Navigation"> 
<ul> 
    <li class="navPrevNext inactive">|&lt; First Page</li> 
    <li class="navPrevNext inactive">&lt; Prev Page</li> 
    <li class="navIndex selected" title="0 ">1</li> 
    <li class="navIndex notselected" title="1 ">2</li> 
    <li class="navIndex notselected" title="2 ">3</li> 
    <li class="navPrevNext active" title="1">Next Page &gt;</li> 
    <li class="navPrevNext active" title="2">Last Page &gt;|</li> 
</ul> 
</div> 

Và trong mã JS của tôi, tôi có:

$("#Navigation li").live('click', function(e) { e.preventDefault; this.blur(); return updateNavigation($(this).attr('title')); }); 

Bất kỳ suy nghĩ?

TIA

+1

một điều: e.preventDefault nên e.preventDefault() –

Trả lời

14

Bạn chắc chắn bạn có jquery 1.3 được bao gồm trong mã của bạn? Các công trình sau đây tốt (sao chép và dán trực tiếp từ câu hỏi của bạn) cho tôi khi tôi nhấp vào bất kỳ LIs nào:

<html> 
<head> 
<script type="text/javascript" src="jquery-1.3.2.min.js"></script> 
<script type="text/javascript"> 
function updateNavigation(title) { 
    alert(title); 
} 

$("#Navigation li").live('click', function(e) { 
    e.preventDefault; 
    this.blur(); 
    return updateNavigation($(this).attr('title')); 
}); 

</script> 
</head> 
<body> 
<div id="Navigation"> 
<ul> 
    <li class="navPrevNext inactive">|&lt; First Page</li> 
    <li class="navPrevNext inactive">&lt; Prev Page</li> 
    <li class="navIndex selected" title="0 ">1</li> 
    <li class="navIndex notselected" title="1 ">2</li> 
    <li class="navIndex notselected" title="2 ">3</li> 
    <li class="navPrevNext active" title="1">Next Page &gt;</li> 
    <li class="navPrevNext active" title="2">Last Page &gt;|</li> 
</ul> 
</div> 
</body> 
</html> 

Bạn có chắc chắn bản cập nhật của bạnChức năng đang hoạt động đúng không? Có thể nó đang được kích hoạt nhưng có điều gì đó không đúng trong đó ...

+0

môi trường dev của tôi đã âm mưu chống lại tôi. Sau khi khởi động lại, tệp JS của tôi đã được cập nhật và nó hoạt động như mong đợi. Dường như tệp cũ hơn đã được giữ trong bộ đệm tạm thời. Cảm ơn bạn đã xác nhận! –

0

Tôi đã làm điều tương tự như @ Parrots và nó hoạt động cho tôi. Tuy nhiên, bạn có thể muốn thay đổi công cụ chọn của mình thành:

$("#Navigation li[title]").live('click', function(e) { 
    e.preventDefault; 
    this.blur(); 
    return updateNavigation($(this).attr('title')); 
}); 

Vì vậy, trình xử lý chỉ được áp dụng cho các thành phần có thuộc tính tiêu đề.

+0

Cảm ơn - Tôi sẽ thử điều đó! (Tốt hơn để tránh lỗi hơn là xử lý chúng sau này) –

+0

Làm việc như một nhà vô địch! –

0

Tôi gặp sự cố tương tự khi tôi đang sử dụng danh sách bật lên mà người dùng đã chọn. Về cơ bản người dùng nhấp vào một hộp đầu vào và một ul được tiết lộ.

Điều này làm việc tuyệt vời với hoạt ảnh 500 mili giây, nhưng khi chuyển sang 250ms, hoạt ảnh cuộn xuống quá nhanh và dường như sự kiện nhấp không bao giờ được kích hoạt trên li.

0

tuổi sử dụng đừng Nó rất đại biểu tốt hơn

Các vấn đề liên quan