创建一个图像,无论哪里有人点击 - .append结合pageX和Pagey

问题描述:

我想创建一个智能手机(iOS和Android)上的交互,创建一个图像,无论有人在屏幕上点击。使用jQuery Mobile的,这是JS我现在所拥有的:创建一个图像,无论哪里有人点击 - .append结合pageX和Pagey

$('#container1').bind('tap', function(e) { 
$('img').css({ 
    position: 'absolute', 
    left: e.pageX, 
    top: e.pageY 
}); 
$("#container1").append('<img src="image.png" />'); 
}); 

然而,这造成了图像的情况下,保持堆叠它们无论用户在哪里水龙头。如果有人用独特的X和Y位置进行点击,我该如何组合这两个代码块来创建同一图像的独特实例?谢谢!

+0

那当然,堆栈的所有图像中的当前位置,因为你使用的是非常基本的选择“IMG”,目前这意味着所有图像该文件。您可以直接在图像上设置样式,只需在HTML代码中直接为其添加'style'属性即可。 – CBroe 2013-04-26 13:45:11

+0

对,我会这样做: $(“#container1”)。append(''); – user1922019 2013-04-26 13:47:25

+0

@ user1922019我加了一个答案。你在pageX和pageY后面忘了'px'。 – Omar 2013-04-26 15:45:56

您的代码

$('img').css({ 
    position: 'absolute', 
    left: e.pageX, 
    top: e.pageY 
}); 

正在改变页面上的所有img标签的位置。您可能需要手动设置您添加的图片样式属性:

$('#container1').bind('tap', function(e) { 
    var image = '<img src="image.png" style="position:absolute;left:' + e.pageX + 
     ';top:' + e.pageY';" />'; 
    $("#container1").append(image); 
} 
+0

似乎并没有工作,但我可能做错: ' $(文件)。就绪(函数(){ \t \t $('#container1 ').bind(' 抽头 '函数(E){ VAR图像=' “; $( “#container1”)附加(图像); \t}); \t \t }); ' – user1922019 2013-04-26 14:10:26

+0

@ user1922019 remove'$(document).ready()'。 – Omar 2013-04-26 14:24:03

+0

@Omar这也没用 - 这是一个小提琴。 http://jsfiddle.net/XyD58/ – user1922019 2013-04-26 15:01:32