变量导致追加不能正常工作

时间:2013-02-02 19:29:49

标签: javascript jquery

在IE9兼容性视图关闭和其他主流浏览器(chrome,firefox,safari和opera)中,当我点击Add Question按钮时,它会在下面附加一个表格行。

但是如果我在IE中打开兼容性视图,它会在下面的表格中添加一个空白。

现在我意识到如果我删除以下代码行:

var flag = true;

然后它适用于IE中的兼容性视图,但我会在错误控制台中收到错误,说明标志未定义。

那么如何修复它以便我在控制台中没有错误但是能够在IE兼容性中将表行追加到表中?

代码如下:

var flag = true;

if(flag == true)
{
    var tbl_qanda = $("#qandatbl").width();
    $("#qandatbl").css({"width": (tbl_qanda - 16)+ "px"});
}

var tbl_qanda_onthefly = $("#qandatbl_onthefly").width();

if(tbl_qanda > tbl_qanda_onthefly)
{
     $("#qandatbl").css({"width": (tbl_qanda_onthefly - 16)+ "px"});
     $("#qandatbl_onthefly_container").css({"width": (tbl_qanda_onthefly)+ "px"});
}

更新

以下是向您展示代码的jsfiddle:http://jsfiddle.net/7GjYK/

要查看工作版本,要查看正在发生的情况,请使用此链接DEMO并在IE9兼容性或任何其他主要浏览器中打开它,当您点击Add Question时,您会看到它在下面附加一个表格行,但是如果您更改兼容性视图并执行相同操作,则会显示一个空白追加。

1 个答案:

答案 0 :(得分:1)

为什么不通过禁用兼容性来保持IE9:

<meta http-equiv="X-UA-Compatible" content="IE=edge" />