代码之家  ›  专栏  ›  技术社区  ›  unrelativity

document.viewport.getHeight()不准确?

  •  2
  • unrelativity  · 技术社区  · 16 年前

    关于Scriptaculous效果的演示。可以找到哪个移动 here

    <style type="text/css">
      a#move_demo { background:#fa0000; color:#fff; padding:5px; border:1px solid #000; }
    </style>
    
    <div class="demo">
      <a href="#" id="move_demo" onclick="new Effect.Move(this, { x: 60, y: -30 }); return
    false;">Click me for a demo!</a>
    </div>
    

    对于包含该值的单个页面,document.viewport.getHeight()返回32,而对于宽度,则可以。

    为什么会这样?它不应该是视口的高度,而不是文档顶部到底部的高度吗?

    1 回复  |  直到 13 年前
        1
  •  6
  •   unrelativity    13 年前

    事实证明,您需要一个正确的DOCTYPE才能使其正常工作,否则原型将处于“怪癖模式”,无法让getheight()按预期工作。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">