Jquery mobile 如何获得令人敬畏的星级

Jquery mobile 如何获得令人敬畏的星级,jquery-mobile,rating,Jquery Mobile,Rating,有没有一种简单的方法可以在Jquery mobile中生成五星评级元素? 类似于 您可以使用完成此任务的任何jQuery插件。在过去,我曾在 您需要考虑的唯一一件事是阻止jquerymobile以自己的风格呈现单选按钮。您可以通过向输入标记添加data role=“none”来实现这一点,请参阅 我发现这个工具更容易使用 我无法让class=“star”与fyneworks一起使用。如果您正在寻找移动评级组件,请查看 编辑:滚动条与jQuery移动主题集成。 使用jQM+评级和分级滚动条构建评

有没有一种简单的方法可以在Jquery mobile中生成五星评级元素? 类似于


您可以使用完成此任务的任何jQuery插件。在过去,我曾在

您需要考虑的唯一一件事是阻止jquerymobile以自己的风格呈现单选按钮。您可以通过向输入标记添加
data role=“none”
来实现这一点,请参阅

我发现这个工具更容易使用


我无法让class=“star”与fyneworks一起使用。

如果您正在寻找移动评级组件,请查看

编辑:滚动条与jQuery移动主题集成。 使用jQM+评级和分级滚动条构建评级系统的教程。

我已设法与jquery mobile(版本1.4.5)一起使用

上述在输入字段上使用data role=“none”的技巧不起作用。 您需要在周围渲染自己的标记。我使用了第页上最简单的例子



调整颜色和大小相当困难,需要更改star.gif和.css文件

以下是我使用Jquery Mobile的解决方案。 希望您喜欢:

<style>
    .rated { background-color: yellow !important; }
    .rating a { border: 0px !important; }
</style>

<div class="rating" id="first">
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="1" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="2" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="3" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="4" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="5" data-iconpos="notext"></a>
</div>

$(".rating a").on("vmouseover", function () {

    var id = $(this).parent().attr("id");
    $("#" + id + ".rating a").each(function (i, v) {
    $(v).removeClass("rated");
  });

  $(this).prevAll().each(function (i, v) {
    $(v).addClass("rated");
  });
  $(this).addClass("rated");

  $("#" + id).data("vote", $(this).data("vote"));
});

.rated{背景色:黄色!重要;}
.评级为{边界:0px!重要;}
美元(“.a”)。在(“vmouseover”,函数(){
var id=$(this.parent().attr(“id”);
$(“#“+id+”.rating a”)。每个(功能(i、v){
$(v).removeClass(“额定”);
});
$(this).prevAll().each(函数(i,v){
美元(v).addClass(“额定”);
});
$(本).addClass(“评级”);
$(“#”+id).data(“投票”),$(this.data(“投票”);
});

是的。。。这不管用。您将jscript按什么顺序声明?Mobiscroll不是免费的。8美元。我必须说我同意;我尝试了这两种方法,并且可以在独立的jQuery页面中获得星级,但在集成到jQuery移动响应设置中时,无法正确显示内容。而Raty在该设置中工作正常。
<style>
    .rated { background-color: yellow !important; }
    .rating a { border: 0px !important; }
</style>

<div class="rating" id="first">
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="1" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="2" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="3" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="4" data-iconpos="notext"></a>
  <a href="#" data-role="button" data-inline="true" data-icon="star" data-vote="5" data-iconpos="notext"></a>
</div>

$(".rating a").on("vmouseover", function () {

    var id = $(this).parent().attr("id");
    $("#" + id + ".rating a").each(function (i, v) {
    $(v).removeClass("rated");
  });

  $(this).prevAll().each(function (i, v) {
    $(v).addClass("rated");
  });
  $(this).addClass("rated");

  $("#" + id).data("vote", $(this).data("vote"));
});