当 JavaScript 关闭时,我使用 jQuery UI 的类来“一致地”设置样式。您只需使用 jQuery UI 应用于元素的类,并包含 jQuery UI 样式表和资源。
例如,如果你有
<a href="#" id="abutton">This is a button</a>
然后你运行了 jQuery UI JavaScript:
$("#abutton").button();
它会将标记更改为:
<a href="#" id="abutton" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only" role="button">
<span class="ui-button-text">This is a button</span>
</a>
给你一个漂亮的 jQuery UI 按钮。但只有在 JavaScript 运行后才会应用它。如果用户没有/不允许 JavaScript,那么你会得到一个丑陋的链接被使用。相反,您应该在开始时使用 jQuery UI 类:
<a href="#" id="abutton" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-only">This is a button</a>
在 JavaScript 运行之前,它将具有基本的 jQuery UI 样式(尽管结构不同 - 跨度不存在,如果您最初有跨度,它无论如何都会添加另一个跨度,恕我直言这是一个错误)。问题是您希望 JavaScript 继续运行,因为它添加了其他东西,例如鼠标悬停效果(以及前面提到的跨度),以便拥有 JavaScript 的用户获得完整的体验,但您还想使用 jQuery UI类默认是因为你想要一些一致的主题(即使它不是 100% 完美)。
有关他们的 CSS 框架的更多信息,请查看http://jqueryui.com/docs/Theming/API。
如果你想让它不使用 JavaScript,你必须有:
- 初始页面,回帖
- 服务器决定需要完成一个弹出窗口,使用包含所有相关对话框类集的对话框呈现视图。
- 用户单击弹出窗口上的按钮,执行另一个回发。
- 服务器在没有弹出窗口的情况下呈现视图。
它很丑,但是没有脚本你不能做动态 HTML,对吧......