相关疑难解决方法(0)

在javascript dom操作之后强制在Internet Explorer中进行DOM刷新

情况就是这样.我有一些看起来像这样的JavaScript:

function onSubmit() {
    doSomeStuff();
    someSpan.style.display="block";
    otherSpan.style.display="none";
    return doLongRunningOperation;
}
Run Code Online (Sandbox Code Playgroud)

当我将其作为表单提交操作并从非IE浏览器运行时,它会快速交换两个跨度可见性并运行长时间的javascript操作.如果我在IE中执行此操作,则直到onSubmit()完全返回后才会执行交换.

我可以通过粘贴一个警告框来强制重绘:

function onSubmit() {
    doSomeStuff();
    someSpan.style.display="block";
    otherSpan.style.display="none";
    alert("refresh forced");
    return doLongRunningOperation;
}
Run Code Online (Sandbox Code Playgroud)

此外,明显的jquery重构不会影响IE行为:

function onSubmit() {
    doSomeStuff();
    $("#someSpan").show();
    $("#otherSpan").hide();
    return doLongRunningOperation;
}
Run Code Online (Sandbox Code Playgroud)

IE8和IE6上存在此行为.反正是否强制在这些浏览器中重绘DOM?

javascript internet-explorer dom

28
推荐指数
4
解决办法
5万
查看次数

如何在IE11中禁用平滑滚动

IE的平滑滚动导致我的应用程序表现得很奇怪(滚动事件会在很短的时间内触发).

有没有办法使用CSS或Javascript完全禁用IE11中的平滑滚动?

javascript css internet-explorer

4
推荐指数
1
解决办法
9153
查看次数

标签 统计

internet-explorer ×2

javascript ×2

css ×1

dom ×1