内容处理:DIV与全屏幕

时间:2010-08-11 15:00:24

标签: javascript css

让我们假设一个简单的应用程序,其顶部有以下导航(伪代码):

<a href="?action=new">New</a>
<a href="?action=search">Search</a>

下面是不同的部分,即“新”面具:

<div id="condition">
    <form>
        <input type="text" name="Login" />
        <input type="text" name="First" />
        <a href="javascript:performSearch()">Perform search</a>
    </form>
</div>
<div id="results"
    <table>
    ..
    </table
</div>

我们假设会话超时并且用户点击...

  • :从服务器返回的内容将“全屏”加载,并且必须包含页眉/页脚/等
  • 执行搜索:内容将显示在结果DIV中:应该只是一条简短的错误消息

问题:

  • 有没有办法通过JavaScript(在“​​error.html”中)识别当前内容是加载到DIV还是“全屏”?
  • 我应该总是返回一个跨越整个浏览器窗口的元素吗?
  • 或者有不同的方法来处理这种情况吗?

感谢任何建议或想法。

1 个答案:

答案 0 :(得分:0)

  

有没有办法通过JavaScript(在“​​error.html”中)识别当前内容是加载到DIV还是“全屏”?或者有不同的方法来处理这种情况吗?

我认为这不重要!

不是100%肯定这会回答你的问题,但这就是我要做的事情:

每个页面中都有一个不可见的error div。

<div id="errordiv" style="display: none">Error!</div>

使其跨越整个浏览器窗口。

div#errordiv
 {
    position: fixed; // Works everywhere except IE 6
    left: 0px; top: 0px; right: 0px; bottom: 0px;
    background-color: white; // or whatever

  }

如果在运行JavaScript时发生错误(无论在什么情况下都是如此!),请使错误div可见:

document.getElementById("errordiv").style.display = "block";

添加错误消息

document.getElementById("errordiv").style.innerHTML= 
                     "<h1>Error</h1>An error has occurred.....";

(当然,你将所有这些都包含在一个中心showError()函数中)

如果在服务器端处理期间发生错误,请从一开始就使其可见(如何执行此操作,因语言而异)。