Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery mobile 1.4未增强使用knockout.js添加的内容_Javascript_Jquery Mobile_Knockout.js_Progressive Enhancement - Fatal编程技术网

Javascript jQuery mobile 1.4未增强使用knockout.js添加的内容

Javascript jQuery mobile 1.4未增强使用knockout.js添加的内容,javascript,jquery-mobile,knockout.js,progressive-enhancement,Javascript,Jquery Mobile,Knockout.js,Progressive Enhancement,我使用knockout.js“foreach”创建了一个元素列表,并希望这些元素能够增强到jQuery移动按钮 <div data-role="content" class="content"> <div id="buttonContainer" data-bind="foreach: buttons"> <div class="controllerButton" data-role="button">

我使用knockout.js“foreach”创建了一个元素列表,并希望这些元素能够增强到jQuery移动按钮

  <div data-role="content" class="content">
     <div id="buttonContainer" data-bind="foreach: buttons">
        <div class="controllerButton" data-role="button">              
              <span class="buttonText" data-bind="text: label"></span>
        </div>
     </div>         
  </div>

使用jquerymobile1.3.2,这一切都很好。对于1.4alpha,jQuery mobile对元素不做任何操作


(我知道我问的是没有文档的alpha,但某些功能(如页面外的面板)使得开关在此时非常有吸引力。)

在调用applyBindings后,需要在按钮上调用.refresh方法

就你的情况来说

...
ko.applyBindings()
$('.controllerButton').button('refresh');

从jQuery Mobile 1.4开始,data role=按钮已弃用,将在1.5上删除。它现在被直接向锚点添加类所取代。主类是
uibtn
,它将一个元素转换成一个按钮

HTML


问题不是重新应用样式,而是jquerymobile首先没有将元素设置为按钮。只要再试一次,它就可以像jQuery mobile 1.3.2一样正常工作。
data role=button
从1.4开始就被弃用,并将在1.5上删除,替换为
class=“ui btn”
这是在1.4中创建按钮的方法
ko.applyBindings({
    buttons: [{
        "label": "One",
            "icon": "ui-btn ui-icon-home ui-btn-icon-top"
    }, {
        "label": "Two",
            "icon": "ui-btn ui-icon-arrow-r ui-btn-icon-right"
    }, {
        "label": "Three",
            "icon": "ui-btn ui-icon-edit ui-btn-icon-bottom"
    }, {
        "label": "Four",
            "icon": "ui-btn ui-icon-info ui-btn-icon-left"
    }, {
        "label": "Five",
            "icon": "ui-btn ui-icon-delete ui-btn-icon-notext"
    }]
});