如何将多个CSS类附加到winjs listview

时间:2013-05-11 14:46:22

标签: winjs

我有一个非常简单的列表视图,可以从动态数据源中撤回

<div id="crCarouselGrid" data-win-control="WinJS.Binding.Template">
    <div class="crCarouselGridItemImg" style="margin:0 auto !important; width:175px; " data-win-bind="className:asset_class"></div>
    <div class="crCarouselGridItemTitle" data-win-bind="textContent: label"></div>  
</div>  `

我需要在我的网格结构类之外添加其他类 - 但是在修改className时它看起来被剥离了:使用asset_name类。

我觉得奇怪的是winJS不能以这种方式处理多个类结构的追加,因为它很常见。有什么想法可以做到这一点?在我之外添加了一堆内联样式的东西。

1 个答案:

答案 0 :(得分:1)

如果没有真正深入研究,我会想到一些选择,其中没有一个被测试过,或者特别满足于此:

  • 尝试使用Binding初始化程序(或可能是转换程序)来构建附加类而不是替换所需的功能
  • 而不是class="crCarouselGridItemImg"解决方法是使用data-class="crCarouselGridItemImg"之类的数据属性,然后将CSS从.crCarouselGridItemImg { ... }更改为[data-class=crCarouselGridItemImg] { ... }
  • 不是以声明方式绑定CSS类,而是在done中执行:
    • WinJS.Binding.processAll(...).done( /* in here */ );