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

Yux*_*ang 4 html css jquery jquery-mobile

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

最新的jQuery移动网站上,他们举例如下:

<div role="main" class="ui-content">
    <p>Page content goes here.</p>
</div><!-- /content -->
Run Code Online (Sandbox Code Playgroud)

对一些旧的,他们有:

 <div data-role="content">
     <p>Page content goes here.</p>
 </div>
Run Code Online (Sandbox Code Playgroud)

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

我个人觉得有点不舒服,因为我有data-role="page",或者"header",或者"footer",但是对于中间人来说是不一致的.

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

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

谢谢!

Oma*_*mar 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中没有任何特殊功能.

表现(参考)

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

一些弃用data-role的:( 参考)

  • 不推荐$.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被移除.