我的脚本似乎在firefox和chrome上工作正常,但它似乎在ie8上失败。 Stragely我在脚本中的所有代码之前放置了一个alert函数,并且alert函数有效。但是document.ready函数几乎从不执行。 这是一个ie8问题?如果是的话,我该如何解决这个问题? 请帮忙。jquery脚本在Chrome浏览器上工作正常,但不是ie8
代码:
<script src="/_layouts/topsoe.common/js/jquery-1.10.2.min.js?rev=YoBy5yEtsejNrLIrIXUs2g%3D%3D" type="text/javascript"></script>
<script>
$(document).ready(function() {
// hide the last two columns and their headings
$("#WebPartWPQ3 .ms-vh2:eq(5)").css("display", "none"); // for the last two column headings;
$("#WebPartWPQ3 .ms-vh2:eq(4)").css("display", "none");
// for each row in the application page
var idcount = 0;
$("#WebPartWPQ3 .ms-itmhover").each(function() {
var proj_ID='project' + idcount; // assigning each row an id so that they can be accesed individually
$(this).attr('id', 'project' + idcount);
idcount = idcount + 1;
$("#"+proj_ID+" .ms-vb2:eq(5)").css("display", "none");
$("#"+proj_ID+" .ms-vb2:eq(4)").css("display", "none");
// extracting the project status and the precentage of completion. these will be used to assign color codes
var status = $("#"+proj_ID+" .ms-vb2:eq(3)").html();
var percentage = $("#" + proj_ID + " .ms-vb2:eq(5) div").html();
var suffix = percentage.match(/\d+/);
console.log(proj_ID + "\n" + status + "\n" + percentage); // remove after testing
// formatting the status cell accroding to the status and percentage;
var bg_color; var status_formatted;
if (status == "In Progress") {
$("#" + proj_ID + " .ms-vb2:eq(3)").html("<div style='position:relative; width:" + suffix + "%;background:#44AFF6; z-index:0; height:60px; margin-bottom:-50px;'></div><div style='position:relative; z-index:1; text-align:center; margin-left:2px;' >In Progress</br>" + percentage + "</div>");
}
if (status == "Completed") {
$("#" + proj_ID + " .ms-vb2:eq(3)").html("<div style='position:relative; width:100% ;background:#57C759; z-index:0; padding:20px 2px; coor:black; height:23px; text-align:center'>completed</div>");
}
if (status == "Halted") {
$("#" + proj_ID + " .ms-vb2:eq(3)").html("<div style='position:relative; width:" + suffix + "%;background:#FF0033; z-index:0; height:60px; margin-bottom:-50px;'></div><div style='position:relative; z-index:1; text-align:center; margin-left:2px;' >Halted </br> " + percentage + "</div>");
}
if (status == "User Acceptance Testing") {
$("#" + proj_ID + " .ms-vb2:eq(3)").html("<div style='position:relative; width:100% ;background:#FFFF66; z-index:0; padding:20px 2px; coor:black; height:23px; text-align:center;'>UAT</div>");
}
});
});
</script>
你可以请检查,哪一行代码在IE8中引发JS错误?您可以使用开发人员工具的脚本控制台窗口来检查它。 –
如果我没记错的话,如果你在ie8 – pathfinder
上使用console.log()奇怪地没有错误,你的脚本将会失败。代码停止工作。我也注意到它在我打开控制台后有效 –