2011-02-24 48 views
5

我想知道jQuery是否支持HTML5元素。jQuery和HTML5元素

例如,我想这个代码,但它无法用一个相当奇怪的错误:

$('<progress value="2">').val(); 

它说:

TypeError: Object 1 has no method 'replace' 

是jQuery的支持HTML5元素的未来,还是我这样做错了什么?

编辑:它似乎并没有被选择:http://jsfiddle.net/z5t3g/

+1

您必须引用html元素,例如$('progress'),我认为您可以基于此值进行选择。 – jonezy 2011-02-24 20:57:27

+0

有意思的是,对元素使用HTML然后使用'$('#progress')来访问它不起作用:http://jsfiddle.net/z5t3g/。 – pimvdb 2011-02-24 21:02:58

回答

2

如果您有<progress />元素在DOM:

<progress value="2" /> 

您可以使用jQuery选择它,但似乎(截至版本1.5)它不知道返回value属性使用.val()方法。您需要按名称检查属性:

$('progress').attr('value'); 
+0

不起作用恐怕:http://jsfiddle.net/z5t3g/1/。 – pimvdb 2011-02-24 21:04:10

+0

@pimvdb - 那个小提琴适合我 - >值50插入到div#div(Firefox 3.6) – jevakallio 2011-02-24 21:06:19

+0

真的吗?然后,这是一个铬错误,我猜...编辑:我不得不关闭'',我不得不使用'attr('value')'。然后它工作! – pimvdb 2011-02-24 21:06:47

0

你要做到这一点

$('progress[value=="2"]).val(); 

不能使用与jQuery整个标签选择。

1

试试这个:

$('#progress').val(); 
+0

不,对不起:http://jsfiddle.net/z5t3g/。 – pimvdb 2011-02-24 21:04:27

1

使用jQuery选择它

$("progress").val();