我前段时间使用jQuerymobile 1.3.2构建了一个Android应用程序。应用程序通过注入超链接标记并在其上调用.button()来创建按钮,然后稍后单击,调用remove()将其再次删除。 E.g:
<a class="jsButton" href="..." data-role="button" data-ajax="false">More...</a>
function doSearchMore(e) {
e.preventDefault();
jQuery(this).remove();
...
}
我现在正在更新到jQuerymobile 1.4.2,此代码不再有效。似乎.button()导致额外的标记来包装超链接,因此超链接上的jQuery(this).remove()只删除内部元素,将包装标记留在后面。这种情况可能已经发生,但现在已经被新造型强调了。
有人可以建议我在点击后如何删除按钮吗?
答案 0 :(得分:1)
从jQuery Mobile 1.4开始,<a>
和<button>
不会自动收到增强功能。要将它们转换为按钮,您需要手动添加类。 jQuery Mobile删除了按钮中的所有 span ,用于容纳文本和图标。
.button()
函数只能在input
上使用,类型为button
,submit
和reset
。
应手动创建锚点和按钮标记,如下所示。
<a href="#" class="ui-btn ui-btn-a ui-btn-icon-right ui-icon-info" data-ajax="false">Information</a>
<button class="ui-btn ui-btn-b ui-btn-icon-left ui-icon-home">Home</button>
现在,您可以在没有任何 enhacnement 方法的情况下动态注入这些按钮,并且可以直接在单击按钮上调用.remove()
。
参考文献: