Jquery 在append函数中定义图像的样式

Jquery 在append函数中定义图像的样式,jquery,css,Jquery,Css,我想在div上右键单击的位置显示一个图像。我无法这样做,可能是因为我以错误的方式添加了样式。我还在web控制台中看到一个错误,我在下面显示的行中说:“属性列表之后缺少}”。谁能帮我一下吗。这是我试图将图像附加到右键单击位置的div的行 $("#Boma").append($("<img>", {"src": "Boma.png" ,"style": width:25px; height:20px; position:absolute; left:xCoord; top:yCoord;

我想在div上右键单击的位置显示一个图像。我无法这样做,可能是因为我以错误的方式添加了样式。我还在web控制台中看到一个错误,我在下面显示的行中说:“属性列表之后缺少}”。谁能帮我一下吗。这是我试图将图像附加到右键单击位置的div的行

$("#Boma").append($("<img>", {"src": "Boma.png" ,"style": width:25px; height:20px; position:absolute; left:xCoord; top:yCoord;}))
$(“#Boma”)。追加($)

我已将右键单击坐标存储在xCoord和yCoord中的另一个函数中,它们是我代码中的全局坐标。

为此,可以将
样式
放在单个字符串中,确保正确连接变量:

$('<img />', { 
  'src': 'Boma.png',
  'style': 'width: 25px; height: 20px; position: absolute; left: ' + xCoord + '; top: ' + yCoord + ';'
}).appendTo('#Boma');

另一方面,我强烈建议您尽可能多地使用类进行样式设置。在您的示例中,应该可以只内联
top
left
规则。

您忘记了以下中的字符串分隔符和度量单位:

width:25px; height:20px; position:absolute; left:xCoord; top:yCoord;
$(“#Boma”)。追加($)
例如:

var childLess=['myTitle'];
var标识对象列表=[];
$(“#Boma”)。在('click',函数(e){
var clickedItem=$(this.attr('title');
if(无子女索引of(clickedItem)>-1){
var概念=clickedItem;
标识对象列表推送(概念);
//控制台日志(标识对象列表);
$(“#Boma”)。追加($(”
#Boma{
位置:相对位置;
边框样式:实心;
高度:500px;
宽度:500px;
}


请记住,X/Y坐标是JS变量,因此您需要将它们连接到字符串。@gaetanoM我现在可以看到图像,但它位于div的侧面,而不是右键单击时位于div的上方。您能告诉我问题出在哪里吗?@Salman Answer updated。让我知道。不要忘记e.pageX或Y之后的px。。。让我知道,谢谢!那是缺失的。我添加了px,现在我得到了我想要看到的。非常感谢@gaetanoMI我现在可以看到图像,但它位于div的侧面,而不是右键单击时位于div的上方。你能告诉我可能出了什么问题吗?在看不到HTML的情况下很难说,但请尝试放置
位置:relati在
#Boma
的CSS中,ve
。如果这不起作用,那么可能在如何获取
xCoord
yCoord
值方面存在一些问题。如果出现这种情况,我建议开始一个新的问题。web控制台会显示一个错误:“解析'left'的值时出错。声明已删除。”分析“top”的值时出错。声明已删除。"这听起来像是您没有显示的代码中的问题。如果双击这些错误,它会将您带到导致问题的代码行,它指向我的html文件而不是js文件。它会将我带到我添加到html文件中的jquery ui v1.10.4文件。可能是我必须添加除1以外的其他版本。10.4.如果没有,那么您认为问题出在哪里?
width:25px; height:20px; position:absolute; left:xCoord; top:yCoord;