我试着查看this post,其标题几乎相同,但尽管尝试了合适的答案,但我的代码仍无效。
我正在创建一个dom之外的元素:
var e = $('<div class="alert"><div class="messageBox"><h1>'+type+'</h1><p class="message">'+message+'</p></div></div>');
在下一行,我试图操纵它。
$('.alert',e).width($(window).width()).height($(window).height());
正如你所看到的,我试图为选择器定义上下文(我在另一篇文章中看到的建议),但它没有用。有人能指出我做错了吗?
答案 0 :(得分:2)
.alert
div已经位于e
变量DOM内容的根目录中,因此无需使用上下文参数(这会导致{strong>查找在.alert
内1}} div为另一个.alert
div,它找不到任何东西)所以就这样做:
e.width($(window).width()).height($(window).height());
如果你要为你的.messageBox
div分配一些属性,那么就像你一样使用context参数:
//this will work as .messageBox is inside your root element(.alert)
$('.messageBox',e).width(...);
答案 1 :(得分:0)
$('.alert',e)
相当于e.find('.alert')
,因为e
为.alert
只需使用:
e.width($(window).width()).height($(window).height());