Javascript console.log导致页面功能发生变化

时间:2016-06-01 12:39:24

标签: javascript internet-explorer console.log

我有一个函数可以修改正在写入文本的控件的innerHTML。

功能的再现:

function handleInput(element, fontName, fontSize) {

    //Code segment 1...

    console.log(elementNode.innerHTML + (elementNode.parentNode ? ", en.pn.ih: " + elementNode.parentNode.innerHTML : ""));

    //Code segment 2....

    var arrayFont = elementNode.getElementsByTagName("font");
    for (var j = 0; j < arrayFont.length; j++)     //Multiple or single <FONT> tag withint a <P> tag
    {

        //Code segment 3...

        console.log("*** 3: Before: fn.ih: " + fontNode.innerHTML + (fontNode.parentNode ? ", fn.pn.ih: " + fontNode.parentNode.innerHTML : ""));

        //Code segment 4...

        console.log("*** 3: After: fn.ih: " + fontNode.innerHTML + (fontNode.parentNode ? ", fn.pn.ih: " + fontNode.parentNode.innerHTML : ""));
    }
}

在代码段3和4中,我修改了elementNodefontNode的innerHTML。仅当执行console.log时,这些更改才会生效。如果我注释掉console.log操作,则第3和第4段中所做的更改会导致不需要的非中断空格和换行符(我通过代码插入换行符)。

为什么会这样?

0 个答案:

没有答案