2016-07-07 74 views
0

我想添加一個帶有JavaScript的鏈接圖像到HTML正文。顯示圖像,但不打開任何鏈接(未觸發onclick事件)。用javascript添加一個鏈接的圖像到html正文

我不只是添加href屬性的原因是,因爲我想爲不同的場景顯示不同的鏈接圖像。

我的HTML代碼

<div id="mypic"> 
    <img src="https://www.dropbox.com/s/5wr9k0zwcxg0315/you%27re_invited.jpg?dl=1" 
     align="middle"> 
</div> 

我的JavaScript代碼

var lang="en"; 
var survey = document.createElement('survey'); 
survey.href="http://www.surveygizmo.com/s3/2654176/case-closed-survey"; 
var image = document.getElementById('mypic').getElementsByTagName('img')[0]; 
var b = survey.appendChild(image); 
document.getElementById('mypic').appendChild(survey); 
+0

您使用調查中'.createElement()'這是無效的。檢查我的答案更多:http://stackoverflow.com/a/38246327/6313073 –

回答

0

在你的代碼說

var survey = document.createElement('survey'); 
  • 裏面的.createElement()方法,你必須插入node。您面臨一個問題,因爲survey不是有效的node,並且不會被視爲迄今爲止發佈的任何HTML版本中的一個。

  • 要修復該問題,請在.createElement()內插入anchor node

你的代碼應該是

var survey = document.createElement('a'); 

注意

  • 添加href屬性是沒有道理的。這就是提示Web瀏覽器導航到給定鏈接的原因。
  • 爲了根據不同的場景顯示不同的圖像,你只需要替換給定的鏈接。

例如:

var link = ((scenario 1) ? "..." : ((scenario 2) ? "..." : "...")); 
survey.href = link; 
+0

很高興幫助@ freckles.karin! –

1

您正在創建一個神祕元素 「調查」 在這裏 -

var survey = document.createElement('survey'); 

您需要讓它成爲主角 -

var survey = document.createElement('a');