我有一个Image对象如下
var img_BlinkingGreen = new Image(); img_BlinkingGreen.src = "Images/UIFiles/transparent-area.gif";
我想设置图像对象的属性以及类和单击事件。我怎样才能做到这一点。 我这样做但它给了我一个错误
img_BlinkingGray.attr({ position: "absolute", opacity: ".1", height: height, width: width, left: left, top: top, class: lnk_question }).onclick("GoToStep('" + nextAns + "');");
我该怎么做。
答案 0 :(得分:1)
img_BlinkingGreen
在您将其作为一个jQuery对象进行转换之前不是它。
$(img_BlinkingGray).attr({
position: "absolute",
opacity: ".1",
height: height,
width: width,
left: left,
top: top,
class: lnk_question
}).click(function(){ GoToStep(nextAns); });
应该工作:)
编辑:注意到你的点击处理程序也很时髦。如果您仍然遇到问题,请逐个尝试各个jQuery命令。
答案 1 :(得分:1)
您只能在jQuery对象上使用jQuery函数。像这样创建你的图像:
$("<img>")
.attr({
'src': 'Images/UIFiles/transparent-area.gif',
// modify all the other attributes here too
})
.click(function(){
// jquery uses click, not onclick
});
虽然通常建议您使用bind()
,delegate()
或on()
进行事件处理。 jQuery 1.7中添加了on()
。
答案 2 :(得分:1)
没人发布正确答案。
.css()
来设置样式.attr()
设置属性。click
+ .attr("data-nextAns")
(或.data()
,如果您的jQuery版本支持它)。代码:
var img_BlinkingGray = $("<img">).css({
position: "absolute",
opacity: ".1",
height: height,
width: width,
left: left,
top: top
}).attr({
class: lnk_question,
src: "Images/UIFiles/transparent-area.gif",
"data-nextAns": nextAns
}).click(function(){
GoToStep($(this).attr("nextAns"));
});
//To append the image, you can use something like this:
img_BlinkingGray.appendTo("body");