我已经查看了很多有关此主题的问题,似乎无法找出我的代码有什么问题。任何帮助将不胜感激!
$(window).resize(function(){
var newwidth = $(window).innerWidth();
var newheight = $(window).innerHeight();
$("#element").height(newheight).width(newwidth);
});
如果窗口调整大小,我试图将#element的大小调整为与窗口相同的高度和宽度。
答案 0 :(得分:13)
关于.innerWidth()
,来自docs:
此方法不适用于窗口和文档对象;对于 这些,请改用.width()。
.innerHeight()
也有note。
因此,您需要使用.width()
和.height()
:
$(window).resize(function(){
var newwidth = $(window).width();
var newheight = $(window).height();
$("#element").height(newheight).width(newwidth);
});
答案 1 :(得分:1)
试试这个:
$(window).resize(function(){
var newwidth = $(window).width();
var newheight = $(window).height();
$("#element").css({"height": newheight, "width": newwidth });
});
答案 2 :(得分:1)
您可以随时使用CSS:
#element {width:100%; height:100%; position:fixed; }
答案 3 :(得分:1)
在普通的Javascript中你可以这样做:
var viewportwidth;
var viewportheight;
// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
if (typeof window.innerWidth != 'undefined')
{
viewportwidth = window.innerWidth,
viewportheight = window.innerHeight
}
// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
else if (typeof document.documentElement != 'undefined'
&& typeof document.documentElement.clientWidth !=
'undefined' && document.documentElement.clientWidth != 0)
{
viewportwidth = document.documentElement.clientWidth,
viewportheight = document.documentElement.clientHeight
}
// older versions of IE
else
{
viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
viewportheight = document.getElementsByTagName('body')[0].clientHeight
}
var mydiv = document.getElementById("element");
mydiv.style.height=viewportheight'px';
mydiv.style.width=viewportwidth+'px';
答案 4 :(得分:1)
$(window).resize(function(){
var newwidth = $(window).width();
var newheight = $(window).height();
$("#element").height(newheight).width(newwidth);
});
都适合我
$(window).resize(function(){
var newwidth = $(window).innerWidth();
var newheight = $(window).innerHeight();
$("#element").height(newheight).width(newwidth);
});