2

我正在尝试在<div>using中获取图像onclick

现在我正在点击文本。但我想在点击时获取 div 中的图像...

我怎样才能做到这一点...?

这是我已经实现的代码,

代码:

<script>
function myFunction()
{
document.getElementById("surprise").innerHTML=images/aftersurprise.png;
}
</script>

当我点击元素时,我应该得到aftersurprise.png关于惊喜元素的图像......

4

7 回答 7

10

采用

document.getElementById("surprise").innerHTML="<img src='images/aftersurprise.png' />";
于 2013-10-12T07:18:41.077 回答
2

您将图像 url 提供给innerHTMLdiv 元素。要在那里添加图像,您必须执行以下操作

document.getElementById("surprise").innerHTML="<img src='images/aftersurprise.png' />";

或者你为什么不去jquery,这很容易

$('#surprise').append("<img src='images/aftersurprise.png' />");
于 2013-10-12T07:21:42.343 回答
0

仅提供图像 url 不会将图像添加到 div 中。您必须使用img标签指定它。

或使用以下代码动态创建它并附加到div

var img = document.createElement('img')
img.src = 'images/aftersurprise.png';
document.getElementById('surprise').appendChild(img);
于 2013-10-12T07:19:48.303 回答
0

试试这个

(function() {
    var oDiv = document.getElementById('surprise');
    oDiv.addEventListener('click', function() {
        this.setAttribute('style', 'background-image: images/aftersurprise.png');
    }, false);
})();

它将图像设置为 div 的背景图像

于 2013-10-12T07:21:27.117 回答
0
img = document.createElement("img");

img.setAttribute('src','https://www.google.co.in/images/srpr/logo11w.png');

document.getElementById("surprise").appendChild(img);

在这里你可以设置你的图像 src

于 2013-10-12T07:24:16.200 回答
0

据我了解,您的问题是所有内容都显示在新/现有页面上,除了图像......!如果是这样,您只需要在调用 JS 函数时延迟一些时间。试试这个:

function Myfunction () 
{
    setTimeout(load, 1000); //this delay will allow browser to load complete image
    function load() 
    {
       var divToPrint = document.getElementById('surprise');
       var popupWin = window.open('', '_blank','width=1000, height=800, location=no, left=200px');
       //popupWin.document.open(); //needed when popup required
       popupWin.document.write('<html><body onload="window.print()">' + divToPrint.innerHTML + '</html>');
       popupWin.document.close();
    }  
}
于 2014-03-22T11:40:03.430 回答
0
$('#divname').append or prepend("<img src='pathOfImages.jpg'/>");

这里只使用一个属性,比如 append ,另一个 prepend >(before content)

于 2019-03-26T10:04:18.883 回答