2011-12-30 32 views
-3

的属性我有一个图片对象如下
设置图像Obejct的jQuery

 

var img_BlinkingGreen = new Image(); 
img_BlinkingGreen.src = "Images/UIFiles/transparent-area.gif"; 

我想设置图像对象和类和click事件的属性。我怎样才能做到这一点。 我做这样的,但它给我一个错误

 

    img_BlinkingGray.attr({ 
          position: "absolute", 
          opacity: ".1", 
          height: height, 
          width: width, 
          left: left, 
          top: top, 
          class: lnk_question 
         }).onclick("GoToStep('" + nextAns + "');"); 

我怎样才能做到这一点。

回答

1

没有人发布正确的答案。

代码:

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"); 
+0

我想在页面加载时创建一个图像,并且我想在不同的位置使用它。当我将创建图像,因为你已经建议将服务器上的图像的请求。我在脚本开始时声明图像的目的是我只改变图像的属性。不创建一个全新的图像。我已阅读有关预加载的图像。我想这样做。 – 2011-12-30 09:58:50

+0

那么,你想要什么?只加载图片?怎么了样式,类名和点击处理程序?这与预加载有什么关系? – 2011-12-30 10:00:54

+0

让我多解释一下。我有一个页面分为两部分。我部分包含图像和其他部分至少20 td取决于数据库值。当用户点击TD或在画面上的图像的位置得到改变可以是图像的数量也将发生变化。风格就是为了这个目的。类名称用于某些静态值。我的应用程序的目的是创建类似视觉效果的移动设备。显示左手机上的手段,并显示右脚本。脚本说点击移动设置然后设置屏幕打开。 – 2011-12-30 10:11:24

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命令。

+0

我想创建页面加载一个图像和文字我想在不同的位置使用它。当我将创建图像,因为你已经建议将服务器上的图像的请求。我在脚本开始时声明图像的目的是我只改变图像的属性。不创建一个全新的图像。我已阅读有关预加载的图像。我想这样做。 – 2011-12-30 09:59:44

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()

+1

'.src()'是否工作? – m90 2011-12-30 09:38:15

+0

@ m90:我诚实地*不知道为什么我这样做。 – Purag 2011-12-30 09:39:35

+0

我正在修改我的问题,请看看。因为src不起作用。 – 2011-12-30 09:45:51