Javascript 如何使用JS针对单个div

Javascript 如何使用JS针对单个div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图在单个div的背景上创建“snow”。代码如下,但您可以在此处看到: 我想把效果放在只有红色边框的div上。 谁能告诉我我错过了什么 <!-- language: lang-js --> var width = getWidth(); var height = getHeight(); var flakeCount = 50; var gravity = 0.7; var windSpee

我试图在单个div的背景上创建“snow”。代码如下,但您可以在此处看到: 我想把效果放在只有红色边框的div上。 谁能告诉我我错过了什么

    <!-- language: lang-js -->

        var width = getWidth();
        var height = getHeight();
        var flakeCount = 50;
        var gravity = 0.7;
        var windSpeed = 20;
        var flakes = [];

        function getWidth() {
            var x = 0;
            if (self.innerHeight) {
                x = self.innerWidth;
            }
            else if (document.documentElement &&     document.documentElement.clientHeight) {
                x = document.documentElement.clientWidth;
            }
            else if (document.body) {
                x = document.body.clientWidth;
            }
            return x;
        }

        function getHeight() {
            var y = 0;
            if (self.innerHeight) {
                y = self.innerHeight;
            }
            else if (document.documentElement &&     document.documentElement.clientHeight) {
               y = document.documentElement.clientHeight;
            }
            else if (document.body) {
                y = document.body.clientHeight;
            }
            return y;
        }

    function getRandom(min, max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    }

    var currentFlake = 0;
    var snowglobe = document.getElementById("snowglobe");

    while (currentFlake < flakeCount) {
        var flake = document.createElement("div");
        flake.className = 'flake';
        flake.style.fontSize = getRandom(12, 24) + 'px';
        flake.style.top = getRandom(0, height) + 'px';
        flake.style.left = getRandom(0, width) + 'px';
        flake.innerHTML = "•";
        newFlake = snowglobe.appendChild(flake);
        newFlake.speed = getRandom(1, 100);
        flakes.push(newFlake);
        currentFlake++;
    }

    function doAnimation() {
        for (var i = 0; i < flakes.length; i++) {
            newX = false;
            newY = false;
            // Calculate Y position
            newY = parseFloat(flakes[i].style.top) + (flakes[i].speed / 100) * gravity;
            if (newY > height) {
                newY = 0 - parseInt(flakes[i].style.fontSize);
                // If Y is at bottom, randomize X
                newX = getRandom(0, width);
            }
            // Calculate X position if it hasn't been set randomly
            if (!newX) newX = parseFloat(flakes[i].style.left) + Math.sin(newY / windSpeed);
            if (newX < -20) newX = width + 20;
            if (newX > width + 20) newX = -20;
            // Set new position
            flakes[i].style.top = newY + 'px';
            flakes[i].style.left = newX + 'px';
        }
    }
    setInterval(doAnimation, 10);

    window.onresize = function(event) {
        width = getWidth();
        height = getHeight();
    }​


<!-- language: lang-css -->

    #snowglobe .flake {
        position: absolute;
        width: 1px;
        height: 1px;
        color: rgba(255,255,255,0);
        text-shadow: 0 0 3px rgba(255,255,255,1);
    }​


<!-- language: lang-html -->

    <div class="ui-full-width">
        <div class="container even" id="snowglobe">
            <h3><span class="num">4</span>Add freshly boiled water to the pot</h3>

            <p>Give it a stir and secure the lid. Wrap your pot in a tea-cosy if it's nippy outside!</p>            
        </div>
    </div>


<!-- end snippet -->

<div class="ui-full-width">
    <div class="container even" id="snowglobe">
        <h3><span class="num">4</span>Add freshly boiled water to the pot</h3>

        <p>Give it a stir and secure the lid. Wrap your pot in a tea-cosy if it's nippy outside!</p>            
    </div>
</div>
当myjs.js加载到我的浏览器中时,它在文件末尾有一个额外的字符,并触发一个合法的

SCRIPT1014: Invalid character
myjs.js (116,2)
脚本部分:

window.onresize = function(event) {
   width = getWidth();
   height = getHeight();
}â // << here

你有没有搞乱一些文件编码选项?

谢谢你的关注。我注释掉了代码,这就是额外的字符。我没有对文件编码选项做任何修改

我检查了控制台,发现有一些元素未定义。看起来我漏掉了一大块:

var width = getWidth();
var height = getHeight();
var flakeCount = 50;
var gravity = 0.7;
var windSpeed = 20;
var flakes = [];

现在一切都好了

首先,我要给这个元素一个ID来进行操作?然后将你的雪效果应用到那个元素上,它有一个id,它是雪球。
var width = getWidth();
var height = getHeight();
var flakeCount = 50;
var gravity = 0.7;
var windSpeed = 20;
var flakes = [];