繁体   English   中英

如何使用JS中的onclick()函数放置图像

[英]How can I place an image with the onclick() function from JS

所以我想我知道该怎么做。 调用onclick()函数时,我需要获取光标的坐标。 问题是,我不确定单击时如何创建新图像。 很抱歉没有显示我的尝试。 它们存在,但基本上什么也没做。 有谁知道如何做到这一点? 谢谢。

编辑:请注意,图像不能在那里开始。 它们必须在单击时创建。

使用CSS设置默认值以隐藏image属性,并使用click函数更改CSS以显示而不是隐藏。

<body style="position: relative">

<script>
var img = null;

function placeImage(e) {

if(img == null){
    img = document.createElement("IMG");
    img.setAttribute("src", "img.png");
    img.setAttribute("width", "40");
    img.setAttribute("height", "40");
    img.style.position = "absolute";
    document.body.appendChild(img);
  }
  img.style.left = (e.clientX - (img.width / 2)) + "px";
  img.style.top = (e.clientY - (img.height / 2)) + "px";
}

document.addEventListener("click", placeImage);
</script>
</body>

这会将图像的中心放置在您单击的位置。

编辑:我更改了代码以将图像创建为DOM对象

基于@AyoubLaazazi的答案,请尝试以下操作:

 img = document.getElementById("img") counter = 0 function placeImage(e) { imgc = $("#img").clone().appendTo("body")[0] imgc.style.visibility = "visible" imgc.style.left = (e.clientX - (img.width / 2)) + "px"; imgc.style.top = (e.clientY - (img.height / 2)) + "px"; counter++ } document.addEventListener("click", placeImage) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <body> <img src="https://d21ii91i3y6o6h.cloudfront.net/gallery_images/from_proof/8007/large/1441565237/stack-overflow-logo.png" style="visibility: hidden; position: absolute" id="img"/> </body> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM