jquery 前置的问题
我不知道为什么这不起作用..
这有效:
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
但是当我这样做时,我的整个页面变成空白(没有加载),但没有错误:
$(this).prepend("<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>");
这也不起作用:这也不起作用
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
$(this).find('div[data-role=header]').prepend("<a href='link'>Link</a>");
:
var string = "<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>";
$(this).prepend(string);
并且这是重要的上下文:
$('div[data-role*="page"]').each(function (i) {
if ($(this).children('div[data-role*="header"]').length != 0) {
alert("has header");
} else {
if (i == 0) {
var string = "<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>";
$(this).prepend(string);
} else {
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
}
$(this).find('div[data-role=header]').page();
}
});
我如何让它发挥作用?
i'm at a loss for why this isn't working..
this works:
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
however when i do this my entire page goes blank (nothing loads), but there's no error:
$(this).prepend("<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>");
this also doesn't work:
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
$(this).find('div[data-role=header]').prepend("<a href='link'>Link</a>");
nor does this:
var string = "<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>";
$(this).prepend(string);
and here's the context in case that matters:
$('div[data-role*="page"]').each(function (i) {
if ($(this).children('div[data-role*="header"]').length != 0) {
alert("has header");
} else {
if (i == 0) {
var string = "<div data-role='header'><a href='link'>Link</a><h1>Hi</h1></div>";
$(this).prepend(string);
} else {
$(this).prepend("<div data-role='header'><h1>Hi</h1></div>");
}
$(this).find('div[data-role=header]').page();
}
});
how do i get this to work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
假设您使用的是 1.4 或更高版本,请尝试使用引入的新元素创建语法动态创建所需的元素:
Assuming you're using version 1.4 or greater, try dynamically creating the elements you need using the new element creation syntax introduced:
根据我的经验,如果在 -tag 中使用了 prepend 函数的脚本,它将不起作用,因为脚本是在 DOM 准备好之前加载的。
为了避免这种挫败感,将 javascript 放在标记之前是一个好习惯。
In my experience, if the script in which the prepend function is used in the -tag, it will not work because the script is loaded before the DOM is ready.
To avoid this kind frustration, is a good habit to place your javascript before the tag.
我猜您正在使用 jQuery mobile,它似乎按 jsfiddle 上的预期工作。你在什么浏览器上测试这个?
更新 jsfiddle 成为更完整的示例,以便页面转换从第一页开始进行。
I am guessing you are using jQuery mobile it appears it works as intended on jsfiddle. What browser are you testing this on?
Updated jsfiddle to be a more complete example so the page transition works from the first page.