1

我收到此错误:

网页错误详情

用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 5.1;Trident/4.0;.NET4.0C;.NET CLR 2.0.50727;.NET CLR 3.0.4506.2152;.NET CLR 3.5.30729)时间戳:星期二, 2012 年 6 月 26 日 11:31:22 UTC

消息:对象不支持此属性或方法行:56 字符:650 代码:0

URI: http://api.apps.com/html/81

消息:对象不支持此属性或方法行:56 字符:738 代码:0

URI: http://api.apps.com/html/81

我不能依赖那个调试器,因为当我查看源代码时,我看到第 56 行是一条长线,我不知道错误到底在哪里?有没有办法追踪错误?错误不支持什么。这是第 56 行:

function send_email(to) {
    if (to.length == 0) {
        $("#email_loader").html("<p>Please enter an `email address</p>");
        $("#email_response").fadeIn(250);
    }
    else {
        _gaq.push(['_trackEvent', 'Email', FA.appID]);
        $("#email_loader").html("<img src='http://apps.com/img/ajax_load.gif' />");
        $("#email_response").fadeIn(500);
        $.get("/inc_appdl_main_api.php", {
            to: to,
            app_id: FA.appID
        }, function (data) {
            if (data.length > 0) {
                $("#email_loader").html(data);
                $("#email_response").delay(1000).fadeOut(500);
            }
        });
        setTimeout(FA.iframeClose, 2000);
    }
};
function iframeClose() {
    parent.postMessage("closeFA", "*");
};
$("#to").keypress(function (event) {
    if ((event.which == '13') && ($(this).val().length > 0)) {
        to = $(this).val();
        event.preventDefault();
        send_email(to);
    }
});
$("#email").click(function () {
    to = $("#to").val();
    send_email(to);
});
function set_url_target(url) {

}

有没有办法在ie8中调试?

我查看了记事本++。它指向那里: char 791 to=$("#to").attr('value');send_email(to);

它出什么问题了

4

2 回答 2

1

确保在加载页面时控制台/开发人员工具处于打开状态,否则在您尝试使用console.log.

假设这不是问题,请尝试console.log()在各种函数调用周围自由添加语句,如下所示:

$("#email").click(function () {
    console.log('call 1...');
    to = $("#to").val();
    console.log('call 1 done.');
    send_email(to);
});

为它疯狂,希望你会在控制台中看到类似的东西

LOG: call 7...

没有匹配LOG: call 7 done.。然后你就知道谁是罪魁祸首了。

该错误提到了几个字符数字,这些数字使您接近两个.val()电话。所以首先关注那些。只需将它们替换为常数即可。

于 2012-06-26T11:55:29.060 回答
0

这对我有用:

"to"IE 由于变量而引发错误。我改变了这个:

$("#email").click(function () {
    to = $("#to").val();
    send_email(to);
});

对此:

$("#email").click(function () {
   var to = $("#to").val();
    send_email(to);
});

IE 停止抛出错误!!

于 2012-06-26T12:48:52.857 回答