我的功能()不会运行?

时间:2015-09-18 04:17:54

标签: javascript

使用此功能,我试图显示一个灯泡,一旦用户点击它就会打开和关闭。

(function () {
    var FavData, ImageData, create_zip, fav, favData;

    window.imageData = [];

    saveButton = document.createElement("save_button");
    saveButton.innerHTML = "save_button";
    saveButton.onclick = function () {
        var image = document.getElementById('save_button');
        if (image.src.match("http://www.w3schools.com/js/pic_bulbon.gif")) {
            image.src = "http://www.w3schools.com/js/pic_bulboff.gif";
        } else {
            image.src = "http://www.w3schools.com/js/pic_bulbon.gif";
        }
    };
}).call(this);

我的HTML:

<button id="save_button"><img src="image" width="100" height="180"></button>

使用id&#34; save_button&#34;。

1 个答案:

答案 0 :(得分:0)

您的代码存在一些问题。您不是使用标记创建元素。之后你不会将它附加到身体上。在按钮上单击,您必须获取图像ID以获取源而不是按钮。

这是工作功能的小提琴。

http://jsfiddle.net/swaprks/9vyauhvf/

(function () {
    var FavData, ImageData, create_zip, fav, favData;

    window.imageData = [];

    saveButton = document.createElement("button");
    saveButton.id = "save_button"
    img = document.createElement("img");
    img.src = "http://www.w3schools.com/js/pic_bulbon.gif";
    img.id = "save-btn-img";
    saveButton.appendChild(img);
    document.body.appendChild(saveButton);
    saveButton.onclick = function () {
        var image = document.getElementById('save-btn-img');
        if (image.src.match("http://www.w3schools.com/js/pic_bulbon.gif")) {
            image.src = "http://www.w3schools.com/js/pic_bulboff.gif";
        } else {
            image.src = "http://www.w3schools.com/js/pic_bulbon.gif";
        }
    };
}).call(this);