好的,这有点难以解释,所以我希望我能理解这一点。
我有一张包含一些线图的表格。该表工作正常但IE6和7中没有绘制线条(8和9工作正常)
我调用一个计算线条的函数,然后用该线条创建一个div。然后该函数使用appendchild()在表中包含该行。
XHTML
<table>
<tr class="outTR">
<th><h:outputText value="# {valuegraph}" /></th>
<c:forEach items="#{valuegraphlist}" var="el">
<td><h:outputText value="#{value}" /></td>
</c:forEach>
</tr>
</table>
JAVASCRIPT
这就是我调用第一个函数的方法
$(document).ready(function() {
initgraphics();
});
function initgraphics() {
var p = $("#imgId_" + firstStep);
var position = p.position();
var img = $("img:first", ".stats");
var i = 0;
var width2 = img.width() / 2;
var Y0 = position.top + p.height();
$("img.img_base", ".stats").each(function() {
jsBaseX[i++] = $(this).position().left + width2;
});
drawLineGraphic(jsBaseX, valuegraph, Y0, "0000FF", "00FF00", true);
}
function drawLineGraphic(BaseX, arrY, Y0, colourDot, colourLine, minus) {
$.each(BaseX, function() {
nextX = this;
nextY = Y0 - arrY[idx];
doter(nextX, nextY, 4, colourDot);
lastX = nextX;
lastY = nextY;
idx++;
});
}
function doter(x, y, d,color){
var str="background: #"+color+";
var ele = document.createElement("div");
ele.setAttribute("style", str);
ele.setAttribute("class", "class1");
ele.setAttribute("id", "p_"+x+"_"+y);
document.body.appendChild(ele);
}
当函数到达appendChild时......它崩溃了......
任何想法??