在附加到屏幕之前,使用jQuery.each在javascript变量上执行
如果我有一些保存在变量$html中的基本html,我想在附加到页面之前使用each(jQuery)语句,我想在这个字符串中查找类的每个实例和ammend$html 这就是我所想的在附加到屏幕之前,使用jQuery.each在javascript变量上执行,javascript,jquery,each,Javascript,Jquery,Each,如果我有一些保存在变量$html中的基本html,我想在附加到页面之前使用each(jQuery)语句,我想在这个字符串中查找类的每个实例和ammend$html 这就是我所想的 $('.flipper', $html).each(function(){ var frontContent = $(this).find('.front > .content'); var backContent = $(this).find('.back > .co
$('.flipper', $html).each(function(){
var frontContent = $(this).find('.front > .content');
var backContent = $(this).find('.back > .content');
$(this).append('<div class="background"><div class="content">' + frontContent.html() + '<div class="back">' + backContent.html() + '</div></div></div>');
console.log($html);
});
$('.flipper',$html).each(function(){
var frontContent=$(this.find('.front>.content');
var backContent=$(this.find('.back>.content');
$(this).append(“”+frontContent.html()+“”+backContent.html()+“”);
log($html);
});
这不会运行-我猜是因为我试图更新页面上的元素,而不是存储在变量中的元素
我还能用这两个吗
Cheers看起来$html是一个字符串,而不是dom元素引用。。。在这种情况下,对循环中的元素所做的更改将不会反映在原始字符串中 试试像这样的东西
var html = '';
var $html = $(html);
$('.flipper', $html).each(function () {
var frontContent = $(this).find('.front > .content');
var backContent = $(this).find('.back > .content');
$(this).append('<div class="background"><div class="content">' + frontContent.html() + '<div class="back">' + backContent.html() + '</div></div></div>');
});
console.log($html[0].outerHTML);
var html='';
var$html=$(html);
$('.flipper',$html)。每个(函数(){
var frontContent=$(this.find('.front>.content');
var backContent=$(this.find('.back>.content');
$(this).append(“”+frontContent.html()+“”+backContent.html()+“”);
});
log($html[0].outerHTML);
演示:试试这个:
$($html).find('.flipper').each(....);
请共享相关的htmlis
$html
是字符串变量吗?嗯。。这不管用。。。它不运行each循环。。但是如果我有这个变量$html=$(html);log($html,“here”);它显示firebug中的每个元素,但显示为灰色out@Dan你试过这个吗fiddle@Dan我得到的o/p是frontbackfrontbackfront2back2front2back2
它有背景div@Dan在您的情况下,需要使用.filter()
而不是.find()
,因为翻转器
不是子元素。。。试试@Dan,只需使用html=$html[0]代码>类似