我的脚本中有什么东西破坏了IE。
我正在查看一个带有类的链接集合,并劫持了URL的链接。单击链接将显示高度动画并显示一条消息。它还执行一个ajax请求,将消息标记为已读。
然而,在IE中,它只是转到URL,而不是停留在页面上处理http请求。
$('.message .subject .subject_link').click(function(e) {
toggle_message(e)
return false;
});
function toggle_message(m) {
var link = m.target;
var parent = $(link).parent().parent();
console.log(link.href);
$.ajaxSetup({
url: link.href,
dataType: 'json',
timeout: 63000,
type: 'GET',
cache: false
});
if($(parent).hasClass('unread')) {
$(parent).addClass('read').removeClass('unread');
$.ajax({
complete: function(r, textStatus) {
console.log(r.responseText)
}
});
}
if($(parent).find('.body_wrapper').hasClass('collapsed')) {
$(parent).find('.body_wrapper').addClass('expanded').removeClass('collapsed');
$(parent).find('.body_wrapper').animate({
height: 'toggle'
})
} else {
$(parent).find('.body_wrapper').addClass('collapsed').removeClass('expanded');
$(parent).find('.body_wrapper').animate({
height: 'toggle'
})
}}
你知道是什么导致了这个问题吗?http://support.cooper.krd-design.net/测试人员: 12345,如果你想查看这个页面
谢谢Rich
发布于 2010-12-02 02:45:21
添加
e.preventDefault();
在第一个函数中的toggle_message之前应该可以工作,尽管返回false也应该可以。
发布于 2010-12-02 02:45:41
我现在还不能访问IE,但我认为你可以试着阻止默认的点击事件在你的-function()中触发,如下所示:
$('.message .subject .subject_link').click(function(e) {
toggle_message(e)
e.preventDefault();
});有关.preventDefault()的更多信息,请单击此处:http://api.jquery.com/event.preventDefault/
https://stackoverflow.com/questions/4327812
复制相似问题