我对jQuery和javascript很新,我创建了一个简单的.html文件,以便使用2种不同的jQuery-ui样式表进行测试。
我想要实现的是示例对话框将使用“轻弹”样式表打开,此对话框中的日期选择器将打开“ui-lightness”样式表。
我试图在用户单击对话框中的文本框时附加所选样式表,但仍然使用“轻弹”样式表。
我的html文件中的代码如下:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>jQuery Multiple Themes</title>
<link rel="stylesheet" type="text/css" href="css/flick/jquery-ui-1.9.0.custom.css">
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript">
function openDialog() {
$("#dialog").dialog();
}
function loadDatePicker() {
$('head').append('<link rel="stylesheet" type="text/css" href="css/ui-lightness/jquery-ui.1.8.24.custom.css">');
$("#date").datepicker({});
}
</script>
</head>
<body>
<input type="button" value="Open Dialog" onclick="openDialog()">
<div id="dialog" title="Test Mutiple Themes" style="display: none">
Click to open a date picker in a different CSS theme
<input id="date" type="text" size="8" onclick="loadDatePicker()">
</div>
</body>
</html>
由于缺乏这些脚本的经验,我希望看到一个简单的语法错误。
答案 0 :(得分:2)
<ul id="nav">
<li><a href="#" rel="/path/to/style1.css">Default CSS</a></li>
<li><a href="#" rel="/path/to/style2.css">Larger Text</a></li>
<li><a href="#" rel="/path/to/style3.css">Something Different</a></li>
</ul>
jQuery
$(document).ready(function() {
$("#nav li a").click(function() {
$("link").attr("href",$(this).attr('rel'));
return false;
});
});
此处的说明:http://www.cssnewbie.com/simple-jquery-stylesheet-switcher/
答案 1 :(得分:1)
在themeroller下载页面上,您可以为主题设置“CSS SCOPE”。这将在您选择的类前面添加样式表中所有UI类的前缀。
这允许在标记中设置与范围类对话的对话框,以及与其范围类相同的另一个小部件,例如dateepicker。