jQuery:我如何重写.after(内容,内容)?

时间:2010-05-28 21:59:48

标签: jquery

我已经使用了这个表单,但根据my previous question它可能不受支持:它不是在文档中的任何一种方式 - 但在代码中意图非常明显。

$(".section.warranty .warranty_checks :last").after(
  $('<div class="little check" />').click( function () {
      alert('hi')
  } )
  , $('<span>OEM</span>')  /*Notice this (a second) argument */
);

这样做的是插入<div class="little check">一个简单的.click()回调,然后是<span>OEM</span>的兄弟。那怎么写呢呢?我通过链接.after().insertAfter()的任意组合来制作一些工作有困难吗?

我希望这会有效,但事实并非如此:

$(".section.warranty .warranty_checks :last").after(
  $('<div class="little check" />').click( function () {
      alert('hi')
  } ).after ( $('<span>OEM</span>')  )
);

我也希望这能奏效,但事实并非如此:

$(".section.warranty .warranty_checks :last").after(
  $('<span>OEM</span>').insertAfter(
    $('<div class="little check" />').click( function () {
       alert('hi')
    } )
  );
);

- &GT; 请参阅my jsfiddle了解示例(测试用例)

2 个答案:

答案 0 :(得分:1)

这可能是天真的答案:

$(".section.warranty .warranty_checks :last").after(
    $('<span>OEM</span>')
).after(
    $('<div class="little check" />').click( function () {
     alert('hi')
    }
);

似乎工作......

编辑:我错过了这一点吗? http://jsfiddle.net/wFx9Z/

答案 1 :(得分:0)

如果我将代码改为

,那么你的代码对我有用
$(".section.warranty .warranty_checks :last").after(
  $('<div class="little check"></div>').click( function () {
    alert('hi')
  } )
  , $('<span>OEM</span>')  /*Notice this (a second) argument */
);

注意<div class="little check"></div><div class="little check" />做了什么?