3

我想让 javascript 自己检测屏幕分辨率,因为我可能有不同的 LCD,而且它们每个的大小都不同。这是我的临时代码。

<html>
<head>
<title>ViewImage</title>
<script type="text/JavaScript">
<!--
function timedRefresh(timeoutPeriod) {
setTimeout("location.reload(true);",timeoutPeriod);
}
//   -->
</script>
</head>
<body onload="JavaScript:timedRefresh(1);">

<img src = "screenshot.jpeg" width="1014" height="751">
</body>
</html>

我尝试将 javascript 放入代码中

<img src = "screenshot.jpeg" <script type="text/JavaScript">"width ="screen.width </script>>

但它失败了。当我打开它时,我希望它能够自行获得解决方案,任何人都可以帮助我解决这个问题吗?提前致谢

4

5 回答 5

3

您的代码似乎有一些问题:

您可以JavaScript:从您的onLoad活动中删除,这在超链接中使用

<a href="javascript: doSomething()" />Link</a>

此外,您尝试每 1 毫秒刷新一次页面(如果您尝试每秒刷新一次,则应将其更改为 1000)。

你的函数最好这样写,这样你就可以避免使用eval

function timedRefresh(timeoutPeriod) {
    setTimeout(function() { 
        location.reload(true); 
    }, timeoutPeriod);
}
于 2012-05-17T10:22:03.940 回答
2

在你的情况下,这就足够了:

<img src = "screenshot.jpeg" width ="100%" />

jsFiddle 演示

当然,这只会body在与视口大小相同的情况下执行您想要的操作。这基本上告诉浏览器img应该与其父级一样大(在本例中为body)。


注意: Javascript 不能按您期望的方式工作。<script>是一个 HTML 元素,可让您将脚本(主要是 Javascript)嵌入到您的文档中。您不能在客户端使用 Javascript 更改 HTML 源代码(就像您可以在服务器端使用 PHP、Python 等一样)。不过,您可以修改 DOM。

于 2012-05-17T10:12:41.653 回答
1

你可以试试这个

window.screen.availHeight for getting height
window.screen.availWidth  for getting width

谢谢。

于 2012-05-17T10:15:34.723 回答
1

只有当您不太担心旧版本的 IE 时,CSS3 的“大小”和“覆盖”属性也有助于解决这种情况。并且无需使用任何 JavaScript

演示 - http://jsfiddle.net/fHwu8/

body{
    background: #000 url(http://www.psdgraphics.com/wp-content/uploads/2009/02/abstract-background.jpg) left top fixed no-repeat;
    background-size: 100% 100%;
    -moz-background-size: 100% 100%; /*cover*/
    -webkit-background-size: 100% 100%;
    -o-background-size: 100% 100%;
}
于 2012-05-17T11:21:30.603 回答
0

尝试:

window.screen.availHeight
window.screen.availWidth
于 2012-05-17T10:15:05.650 回答