jQuery prepend()Bug?

时间:2010-06-29 17:49:31

标签: jquery prepend

我正在使用prepend(),结果似乎是错误的。

$('#element').prepend('<div><a href="http://google.com"><a href="http://test.com">Test.com</a> - A site</a></div>');

html结果(也用Firebug查看)是错误的:

<div>
    <a href="http://google.com"></a>
    <a href="http://test.com">Test.com</a> - A site
</div>

(链接只是示例链接)

4 个答案:

答案 0 :(得分:4)

你不能在里面有一个锚一个锚...所以它不是“buggy”,它在无效的HTML中出现意外行为,但是当HTML无效时......好吧,预期。

以这种方式思考,如果你点击内部锚点,你的浏览器应该去哪里?您点击了http://test.com http://google.com

答案 1 :(得分:1)

据我所知,html中不允许使用嵌套链接(a元素)。因此浏览器会在第二个之前关闭。它与jQUery无关。

答案 2 :(得分:0)

答案 3 :(得分:0)

您必须使用正确的DOM格式编写。同意Nick Craver。

只要“a”标签与另一个元素“a”相遇,DOM就会自动关闭之前的“a”标签。与xml相同。