jQuery mobile:数据角色和角色/类之间的区别

时间:2014-02-15 03:21:43

标签: jquery html css jquery-mobile

我是jQuery和网页设计的新手,请原谅我提出这个天真的问题。

latest jQuery mobile website上,他们的示例如下:

<div role="main" class="ui-content">
    <p>Page content goes here.</p>
</div><!-- /content -->

on some older ones,他们有:

 <div data-role="content">
     <p>Page content goes here.</p>
 </div>

我的问题是: 1)这只是一个版本问题,对于新版本,第一种情况比第二种情况更受欢迎吗?

我个人觉得有点不舒服,因为我有data-role="page""header""footer",但中间人不一致。

2)我试图在他们的API文档中找到这个部分,但找不到它 - role="main"class="ui-content"的单独角色是什么?我认为数据角色只是让jQuery在pagecreate中应用类,在这种情况下,role="main"做同样的事情吗?如果是,为什么他们同时使用两者?

我知道第二个问题非常重要,只要有人能指出我可以解释的文档链接,我就会非常感激。

谢谢!

1 个答案:

答案 0 :(得分:10)

data-role="content"已在jQuery Mobile第一版中使用,直到1.3.2。在新的稳定版本中,除了已被删除并替换为类的其他<div role="main" class="ui-content">之外,它已更改为data-role

jQuery Mobile决定弃用某些data-role的原因是为了加快初始化并缩短增强 DOM元素的时间。此外,已弃用的data-role不是小部件,因此它们在jQM API中没有任何特殊功能。

  

效果reference

     

为了提高性能,我们减少了DOM操作。已完全删除为样式为butons的元素生成内部标记。在许多情况下,框架只是在增强期间向本机元素添加类,我们甚至减少了框架添加的类的数量。

部分已弃用的data-role :( reference

  • 已弃用$.fn.mobile.fieldcontain()data-role=”field-contain”。只需添加课程“ui-field-contain”

  • 已弃用data-role=”content”和选项contentTheme(data-theme)。这也意味着框架不再添加ARIA角色“main”。请在您的标记中添加课程ui-contentrole=”main”

此外,.buttonMarkup()以及data-role="button"已弃用,将在1.5中删除。