2

我刚开始使用 jquery 移动自定义主题而不是默认主题之一。很多问题......但目前的问题是动态创建的按钮无法按预期工作。

我有一些通过 $("#container").append(...) 注入的动态 html

            <div>
                <a class="view-it" data-role="button" href="">View</a>
            </div>

因为它是动态的,我需要做

$("*[data-role='button']").button();

让它初始化。

虽然我的按钮现在看起来像一个按钮,但锚点仍然看起来像一个超链接,并且单击事件仅在单击按钮内部的超链接时触发,而不是在按钮本身的其他区域上。

有任何想法吗?

更新:

如果我使用这样的 div 而不是锚点

            <div class="view-it" data-role="button">
                View 
            </div>

它现在正确显示,但仍然不响应整个按钮表面的点击...仅在文本周围(+一点边距)

4

1 回答 1

1

data-role=button已弃用,因此您需要手动添加类,即使您动态附加它们也不需要任何手动增强。.button()仅用于<input type=button>

您的解决方案如下:

var Btn = '<a href="#" class="ui-btn ui-btn-Custom ui-btn-icon-Position ui-icon-Name">Button</a>';

$(".selector").append(Btn);
  • ui-btn-Custom: 是主题色板,即ui-btn-a

  • ui-btn-icon-Position: 图标的位置,左,右,上,下或 notext 即ui-btn-icon-left

  • ui-icon-Name:图标的图像,即ui-icon-home

演示

于 2014-02-27T20:20:06.600 回答