使用html中的按钮将网站背景更改为图像

时间:2017-10-23 06:18:08

标签: javascript html

在我的脚本标签中,我有:

function swap() {
  if (document.getElementById("pic").src.endsWith('Design/b1.jpeg') != -1) {
    document.getElementById("pic").src = "Design/b1.jpeg";
  }
}
<img src="Design/b1.jpeg" alt="B1" width="255" height="38" type="button" name="pic" id="pic" onclick="swap();" />

我哪里出错了? 谢谢!

4 个答案:

答案 0 :(得分:0)

你错过了一个大括号

function swap(){
  if (document.getElementById("pic").src.endsWith('Design/b1.jpeg') != -1) {
      document.getElementById("pic").src = "Design/b1.jpeg";
  }
}

示例:

function swap(){
  if (document.getElementById("pic").src.endsWith('https://dummyimage.com/100x100/d62dd6/fff') != -1) {
      document.getElementById("pic").src = "https://dummyimage.com/100x100/d62dd6/fff";
  }
}
<img src="https://dummyimage.com/100x100/000000/fff" alt="B1" width="100" height="100" type="button" name="pic" id="pic" onclick="swap();" />

答案 1 :(得分:0)

使用缩进是一种很好的做法。如果您使用以下内容,您的问题永远不会发生:

function swap()
{
  if (document.getElementById("pic").src.endsWith('Design/b1.jpeg') != -1) 
  {
    document.getElementById("pic").src = "Design/b1.jpeg";
  }
} // <= your error

答案 2 :(得分:0)

为什么这么多硬编码?使用带参数的交换函数。

function swap(reference, val){
    var elem = document.getElementById(reference);
    if(elem.getAttribute('src') !== val){
        elem.setAttribute('src', val);
    }
}

答案 3 :(得分:-1)

尝试:

  function swap(){
if (document.getElementById("pic").src.endsWith('Design/b1.jpeg') != 1) {
    document.getElementById("pic").src = "Design/b1.jpeg";
}

我认为如果网址不匹配我想要交换。如果没有,请提供更多详细信息