我想编写一个调用replaceWith的插件,如何选择新内容,以便我可以将我的插件链接到新内容。
$.fn.spam = function() {
this.replaceWith('<span>spam</span>');
};
我想做点什么
$('div').span().css('background-color', 'red');
replaceWith
返回旧内容,如何获取新内容?
答案 0 :(得分:2)
$.fn.spam = function() {
var elems = $();
this.each(function() {
var span = $('<span />', {text: 'spam'});
$(this).replaceWith(span);
elems.push(span.get(0));
});
return $(elems);
};
$('div').spam().css('background-color', 'red');
答案 1 :(得分:1)
也许是这样的:
$.fn.span = function() {
var theNewElt = $('<span>spam</span>');
this.replaceWith(theNewElt);
return theNewElt;
};
$('div').span().css('background-color', 'red');
上测试
答案 2 :(得分:0)
我找到了一种使用replaceAll
jquery方法
$.fn.spam = function() {
return $('<span>spam</span>').replaceAll(this);
};