用于 jQuery UI 的 Star Rating 小部件
Posted
技术标签:
【中文标题】用于 jQuery UI 的 Star Rating 小部件【英文标题】:Star Rating widget for jQuery UI 【发布时间】:2010-12-05 18:43:09 【问题描述】:我被介绍给 jQuery UI 的 Star Rating widget。 我最初使用的是this one。
使用这两者有什么区别吗?
尝试使用 jquery UI 时,我无法让输入按钮显示为星号。我包含了这些 js 和 css 文件:
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script src="jquery-ui-1.7.2.custom.min.js" type="text/javascript"></script>
<script src="ui.stars.js" type="text/javascript"></script>
<link href="ui.stars.css" type="text/css" rel="stylesheet" />
对于我的代码,简单地说:
<form>
Rating: <span id="stars-cap"></span>
<div id="stars-wrapper1">
<input type="radio" name="newrate" value="1" title="Very poor" />
<input type="radio" name="newrate" value="2" title="Poor" />
<input type="radio" name="newrate" value="3" title="Not that bad" />
<input type="radio" name="newrate" value="4" title="Fair" />
<input type="radio" name="newrate" value="5" title="Average" checked="checked" />
<input type="radio" name="newrate" value="6" title="Almost good" />
<input type="radio" name="newrate" value="7" title="Good" />
<input type="radio" name="newrate" value="8" title="Very good" />
<input type="radio" name="newrate" value="9" title="Excellent" />
<input type="radio" name="newrate" value="10" title="Perfect" />
</div>
</form>
所有文件和图像都在同一个文件夹中。我以前从未使用过 jquery UI,所以我不确定我是否只需要那个文件。我也不确定它是否需要它,我使用的其他星级插件不需要它。有人知道我错过了什么吗?
【问题讨论】:
【参考方案1】:通常 jquery ui css 文件引用名为 images
的文件夹中的图像,放置与 css 文件相同的目录。因此,您需要更改 ui.stars.js 中引用图像的路径。
|
--images
|
---image files are here
|
--ui.stars.css
【讨论】:
奇怪,我创建了 images 文件夹并将 ui.stars.gif 放入其中,但仍然没有成功。【参考方案2】:当使用 orkans 的 star_rating 时,你需要告诉它明确地将单选按钮转换为星星,像这样(我使用 jQuery.noConflict 模式):
jQuery(document).ready(function($)
$("#stars-wrapper1").stars();
【讨论】:
【参考方案3】:我发现,我下载的版本的问题是,对象 o 没有在 _init 函数中正常初始化(未加载 ui.star.js 末尾的默认值)。该对象还设置 CSS 值(类)。我还没有找到解决方案,但一个简单的解决方法是,在您页面上的星星初始化时填充这些值:
<script type="text/javascript">
$("#stars-wrapper1").stars(
cancelClass: "ui-stars-cancel",
starClass: "ui-stars-star",
starOnClass: "ui-stars-star-on",
starHoverClass: "ui-stars-star-hover",
starDisabledClass: "ui-stars-star-disabled",
cancelHoverClass: "ui-stars-cancel-hover",
cancelDisabledClass: "ui-stars-cancel-disabled"
);
</script>
【讨论】:
以上是关于用于 jQuery UI 的 Star Rating 小部件的主要内容,如果未能解决你的问题,请参考以下文章
jQuery:用于博客的带有核心 jQuery 或 jQuery UI 的纯 HTML/CSS?
用于颜色选择的jQuery UI小部件(类似于Microsoft Office 2010中的小部件)。