我得到以下JS代码:无法读取属性' clientWidth'为null

时间:2014-12-03 13:01:24

标签: javascript jquery html css

我目前正在为客户端测试一些javascript snow,并且在codepen上有一个可用的版本(http://codepen.io/pirrera/pen/qEOqLg)。

现在,我在site中实现了这个(只是简单的bootstrap,包括来自codepen的JS),但是我得到一个错误说:Uncaught TypeError:无法读取属性'clientWidth'的null

我不知道为什么这不适用于我的网站,但它正在使用codepen? :(

这是JS代码:

(function () {

var COUNT = 300;
var masthead = document.querySelector('.sky');
var canvas = document.createElement('canvas');
var ctx = canvas.getContext('2d');
var width = masthead.clientWidth;
var height = masthead.clientHeight;
var i = 0;
var active = false;

< -snip->完整代码here

4 个答案:

答案 0 :(得分:1)

试试这个:

  1. 将'sky'的id设置为'sky'
  2. 使用document.getElementById('sky').clientWidth;

  3. 祝你好运!

答案 1 :(得分:1)

你的身体上缺少class =“sky”。

你的身体标签应如下所示: <body data-twttr-rendered="true" class="sky">

或将js中的查询选择器更改为: var masthead = document.querySelector('body');

答案 2 :(得分:1)

您尚未将类名sky设置为<body>标记。或者也许你可以改用var masthead = document.querySelector('body');

答案 3 :(得分:0)

以下部分代码返回null,这就是您无法访问它的属性clientWidth的原因。

document.querySelector('.sky')