Используя jQuery, как я могу получить высоту окна

0

Я попытался использовать jQuery, чтобы получить высоту/ширину окна в методе onload() HTML-страницы, однако он просто выдает исключение. Я, очевидно, делаю что-то не так, потому что я начинаю с HTML5, Javascript и jQuery.

Код HTML:

<!DOCTYPE html>
<html>
<head>
    <title>Testing Javascript Raphael</title>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width" />
    <script type="text/javascript" src="js/libs/raphael/raphael-min.js"></script>
    <script type="text/javascript" src="js/jquery-2.0.3.min.js"></script>
    <script type="text/javascript" src="js/our_script.js" ></script>
</head>
<body>
    <div id="canvas_container"></div>
</body>
</html>

Javascript our_script.js:

//var paper = new Raphael(10, 50, 320, 200);
//var circle = paper.circle(50, 40, 10);
//circle.attr("fill", "#f00");
//circle.attr("stroke","#fff");

window.onload = function() {  
//var paper = new Raphael(document.getElementById('canvas_container'), $( window ).width(), $( height).height());
var height = $( window ).height(); // ** This call does not work - exception is thrown and height variable remains undefined.
//var paper = new Raphael(document.getElementById('canvas_container'), 500,500);  
//var circle = paper.circle(100, 100, 80);  
//for(var i = 0; i < 5; i+=1) {  
    //var multiplier = i*5;  
    //paper.circle(250 + (2*multiplier), 100 + multiplier, 50 - multiplier)  
//}  
//var rectangle = paper.rect(200, 200, 250, 100);  
//var ellipse = paper.ellipse(200, 400, 100, 50);  
};

window.onresize = function() {
  var r = $( window ).height();
  var w = $( window ).width();
};

$( window ).load( function() {
  var height = $( window ).height();
  var width = $( window ).width();
});

Неужели я не могу запросить объект окна по высоте/ширине в вызове onload?

  • 0
    Какое исключение вы получаете?
  • 0
    это выглядит хорошо здесь http://jsfiddle.net/CUa2a/ Если вы имеете в виду закомментированный код $( height).height() вам нужно заменить высоту окном $( window).height()
Показать ещё 2 комментария
Теги:

1 ответ

0

Ах, вы прокомментировали соответствующую часть. Вы пытаетесь использовать переменную height в функции window.load, но эта переменная не существует в этой области, и ваше второе событие window.load еще не было оценено.

Здесь нет смысла удваивать ваш код. Переместите весь свой код window.load здесь в одну функцию. jQuery не ограничивается использованием в своих собственных прослушивателях событий, как вы, кажется, сделали здесь.

  • 0
    исключение var height = $( window ).height() когда я пытаюсь var height = $( window ).height() . Это вызов функции height (), вызывающий исключение, а не попытку использования переменной высоты

Ещё вопросы

Сообщество Overcoder
Наверх
Меню