我使用jPlayer jquery-ui主题:http://jplayer.org/latest/demo-07
当我点击播放器上的暂停按钮时,按钮会显示“暂停”标题,并且暂停图标未显示。该图标应由jquery-ui类放置: ui-icon ui-icon-pause
在将其与上面链接中的原始内容进行比较时,我注意到在a元素中,“display:none”内联样式被display: inline
替换。
在原文中,它被display: block
<a title="pause" tabindex="2" class="jp-pause ui-icon ui-icon-pause" href="javascript:;" style="display: none;">pause</a>
在Firebug中修复此图标呈现正确。
那么为什么在点击暂停按钮时,我的播放器中的display: none
替换为display: inline
而不是display: block
?
我猜jPlayer使用hide()&amp;用于切换按钮的jquery show()。
答案 0 :(得分:4)
我刚刚与Jplayer一起解决了同样的问题。您上面的初始评论是100%正确,jquery show()方法指定内联样式。这是修复:
错误代码:
this.css.jq.pause.show();
更改为(工作):
this.css.jq.pause.css("display", "block");
太棒了,希望它适合你
答案 1 :(得分:1)
对我来说,这个问题是由于延迟加载样式表造成的。 确保在初始化播放器之前加载了皮肤样式。
答案 2 :(得分:0)
首先,我尝试在暂停按钮样式中添加display: block;
。只有这样才能使暂停按钮在加载时闪烁。所以这不是一个好的解决方案。
使用Google搜索,我发现解决问题的一种方法是使用分部更改锚点,如下所示:
内联版本:
<a href="#" class="jp-play">Play</a>
<a href="#" class="jp-pause">Pause</a>
阻止版本:
<div class="jp-play">Play</div>
<div class="jp-pause">Pause</div>
然后暂停按钮显示为预期的块。
来源:https://karolo.com/blog/developer/jplayer-how-to-use-jplayer-to-build-your-own-mp3-player.html