2012-03-07 73 views
0

我在jQuery中创建了一个图像,但边界属性似乎不起作用......我的语法错了吗?在html中创建图像标签并添加css

var img = 
     $('<img>', { 
      'title': 'Event (Event '+wavy_counter+')', 
      'class': 'listed_event', 
      'id': 'wavy_event_'+wavy_counter+'', 
      'data-count': ''+wavy_counter+'', 
      'src': 'final_tutorial_buttons/wavy.png', 
      'height': '50', 
      'width': '50', 
      'border': 'solid', 
      'border': '2px', 
      'border': 'red', 
      'onclick': 'highlight.call(this);', 
      'data-start': '', 
      'data-end': '' 
     }); 

我得到一个边框,但是黑色而不是红色。

回答

4

我觉得应该是:

'style': 'border: 2px solid red', 

这是一个很长一段时间我不使用“本地” HTML border属性,但我认为这只是设置边框的厚度。要定义所有你想要的属性,你需要CSS,因此style属性。

+1

这是唯一正确的答案。如果有人想知道谁投下了所有其他答案,那就是我,而我做到了,因为所有其他答案都是错误的。仅供参考,您可以使用'css:{border:'2px solid red'}',它将使用jQuery的'.css()'方法。这样你可以使用一个对象来设置多个样式。 – 2012-03-07 19:31:21

2

尝试合并的定义和使用attr方法来代替:

$('<img />').attr({ 
    /* ... definitions ... */, 
    src : 'final_tutorial_buttons/wavy.png', 
    style : 'border:2px solid red;', 
    /* ... definitions ... */, 
}); 
-2

只是一个建议:你尝试过使用十六进制颜色代码为红? #FF0000

0
$(document).ready(function() { 

    var img = $("<img />").attr("src","http://static.jquery.com/files/rocker/images/logo_jquery_215x53.gif").css({border: "2px solid red"}); 


    $("body").append(img); 

}); 

演示:http://jsfiddle.net/CXn6v/