有没有办法通过单击按钮来更改 Jquery 插件选项?

Posted

技术标签:

【中文标题】有没有办法通过单击按钮来更改 Jquery 插件选项?【英文标题】:Is there a way to change Jquery plugin options with a click of a button? 【发布时间】:2015-10-16 14:16:44 【问题描述】:

我在 mysite 上使用 Jplayer 查询插件作为音频播放器。虽然我设法通过这个设置插件的选项:

$(document).ready(function()

$("#jquery_jplayer_1").jPlayer(
    ready: function () 
        $(this).jPlayer("setMedia", 
            title: MediaTitle,
            mp3: MediaURL
        );
    ,
    remainingDuration: true,
    defaultPlaybackRate: 1,  /* <-- I'd like to change the playback rate 
                                    when I click a button */
    toggleDuration: true
);
);

我的目标是分配一个按钮来控制播放速率,例如,当我按下“速度”按钮时,deafultPlaybackRate 会从 1 变为 1.5。

我正在考虑通过使用 .click 鼠标事件来解决这个问题。

例如:

   <script type="text/javascript">
   $( ".speeder" ).click(function() 
       /*make the defaultPlaybackRate go from 1 to 1.5 */
    );
   </script> 

我在正确的道路上吗?是否可以通过鼠标点击按钮等事件来更改全局 jquery 插件设置?

【问题讨论】:

$("#jquery_jplayer_1").jPlayer("options",defaultPlaybackRate : 1.5); 如果插件遵循 jQuery 插件代码标准 How to change the playing speed of videos in html5?的可能重复 【参考方案1】:

查看documentation here:

<script type="text/javascript">
   $( ".speeder" ).click(function() 
       $("#jquery_jplayer_1").jPlayer("option","playbackRate", "1.5"); // or
       //$("#jquery_jplayer_1").jPlayer("option",playbackRate : 1.5);
    );
</script> 

【讨论】:

这段代码似乎是正确的,但不幸的是它对我不起作用:(谢谢你的回答 @vinayaki jsfiddle.net/FLVR/XLNCY/18402 希望这是可以理解的......我正在尝试分配速度按钮(.button1、.button125、.button15)以相应地控制 defaultPlaybackRate 参数 代码运行正常,可以查看日志。 jsfiddle.net/pxocLg68 根据日志它运行良好,但不幸的是轨道的实际速度没有改变 那是defaultPlaybackRate,当你不改变的时候,我认为你需要重新访问 API 文档来找到改变播放速率的正确方法,也许是 $("#jquery_jplayer_1").jPlayer("option","playbackRate", "1.5");

以上是关于有没有办法通过单击按钮来更改 Jquery 插件选项?的主要内容,如果未能解决你的问题,请参考以下文章

单击单选按钮图像应更改

通过单选按钮更改 Jquery 表单提交

允许用户在没有 Javascript 的情况下取消单击单选按钮

通过数据表jQuery插件添加的按钮上的jQuery单击事件

使用jQuery动态获取单选按钮组名称

如何使用 CSS 更改单选按钮的大小?