QQ爹の博客 QQ爹の博客

APlayer Typecho插件兼容instantclick.js

in 代码相关 read (601) 100汉字 文章转载请注明来源!

APlayer Typecho插件

https://github.com/FaithPatrick/APlayer-Typecho-Plugin

instantclick 3.0.1版兼容

方法来自https://muguang.me/php/typecho-theme-apollo.html

将预加载的执行代码

<script data-no-instant>
InstantClick.init();
</script>

改为

<script data-no-instant>
        if (!window.audios) {
            audios = [];
            for (var i = 0; i < APlayers.length; i++) {
                audios[i] = APlayers[i].audio;
            }
        }
        InstantClick.on('change', function (isInitialLoad) {
            for (var i = 0; i < APlayers.length; i++) {
                audios.push(APlayers[i].audio);
            }
            for(var i = 0; i < audios.length; i++) {if(audios[i]){audios[i].pause()}};
        });
        InstantClick.init();
</script>
<script>var APlayerOptions = [];</script>//如果无效果尝试删掉这行

instantclick 3.1.0版兼容

这个是我参考上边的瞎弄弄出来的,虽然完全看不懂QAQ。。。

打开插件的plugin.php将里面的

<script>
var len = APlayerOptions.length;
for(var i=0;i<len;i++){
    if(document.getElementById('player' + APlayerOptions[i]['id'])) {
        APlayers[i] = new APlayer({
            element: document.getElementById('player' + APlayerOptions[i]['id']),
            narrow: false,
            preload: APlayerOptions[i]['preload'],
            mutex: APlayerOptions[i]['mutex'],
            autoplay: APlayerOptions[i]['autoplay'],
            showlrc: APlayerOptions[i]['showlrc'],
            music: APlayerOptions[i]['music'],
            theme: APlayerOptions[i]['theme']
            });
        //APlayers[i].init();
    }
}
</script>

改为

<script data-no-instant>//就是这里有修改,其他都没动
var len = APlayerOptions.length;
for(var i=0;i<len;i++){
    if(document.getElementById('player' + APlayerOptions[i]['id'])) {
        APlayers[i] = new APlayer({
            element: document.getElementById('player' + APlayerOptions[i]['id']),
            narrow: false,
            preload: APlayerOptions[i]['preload'],
            mutex: APlayerOptions[i]['mutex'],
            autoplay: APlayerOptions[i]['autoplay'],
            showlrc: APlayerOptions[i]['showlrc'],
            music: APlayerOptions[i]['music'],
            theme: APlayerOptions[i]['theme']
            });
        //APlayers[i].init();
    }
}
</script>

将预加载的执行代码

<script data-no-instant>
InstantClick.init();
</script>

改为

<script data-no-instant>
      if (!window.audios) {
            audios = [];
            for (var i = 0; i < APlayers.length; i++) {
                audios[i] = APlayers[i].audio;
            }
        }
InstantClick.on('change', function(isInitialLoad) {
 if (isInitialLoad === false) {
var len = APlayerOptions.length;
for(var i=0;i<len;i++){
    if(document.getElementById('player' + APlayerOptions[i]['id'])) {
        APlayers[i] = new APlayer({
            element: document.getElementById('player' + APlayerOptions[i]['id']),
            narrow: false,
            preload: APlayerOptions[i]['preload'],
            mutex: APlayerOptions[i]['mutex'],
            autoplay: APlayerOptions[i]['autoplay'],
            showlrc: APlayerOptions[i]['showlrc'],
            music: APlayerOptions[i]['music'],
            theme: APlayerOptions[i]['theme']
            });
        //APlayers[i].init();
    }
} 
for (var i = 0; i < APlayers.length; i++) {audios.push(APlayers[i].audio);}
for(var i = 0; i < audios.length; i++) {if(audios[i]){audios[i].pause()}};
  }
});
InstantClick.init();</script>

单曲演示

列表歌曲演示

jrotty WeChat Pay

微信打赏

jrotty Alipay

支付宝打赏

文章二维码

扫描二维码,在手机上阅读!

instantclickAPlayer兼容
最后由Jrotty编辑于2017-08-07 13:59
发表新评论
已有 25 条评论
  1. Mr.Li
    Mr.Li
    回复

    膜拜技术大牛

  2. OC4
    OC4
    回复

    专辑里的音乐多了,有的加载不出来…

    1. Jrotty
      Jrotty本文作者
      回复

      @OC4 部分歌曲部分地区没有版权233

  3. 大袋鼠
    大袋鼠
    回复

    偶然被我发现了个小问题。
    复现:播放歌曲 -> 查看第二页评论
    然后尝试跳转到其他页面,音乐会持续播放。

    1. Jrotty
      Jrotty本文作者
      回复

      @大袋鼠 其实bug是这样的,播放歌曲 -> 查看第二页评论,歌曲会停止,因为评论翻页用的是预加载的东西搞出来的,不是ajax翻页,以后在想怎么搞

      1. 大袋鼠
        大袋鼠
        回复

        @Jrotty 歌曲并不会停止啊。

        1. Jrotty
          Jrotty本文作者
          回复

          @大袋鼠 我测试评论翻页时,歌曲就停了呀

          1. 大袋鼠
            大袋鼠
            回复

            @Jrotty 我又看了下,单曲会停,歌单不会。

            1. Jrotty
              Jrotty本文作者
              回复

              @大袋鼠 还真是,尴尬,我在试试怎么解决

  4. 初夏小朋友

    你这个页面不能用手机打开自动跑流量

    1. Jrotty
      Jrotty本文作者
      回复

      @初夏小朋友 活该233,让你没wifi

  5. Waxxh
    Waxxh
    回复

    感谢大大

  6. 王大佬
    王大佬
    回复

    木有WordPress

    1. 小龙
      小龙
      回复

      @王大佬 有啊,怎么会没有

前篇 后篇
雷姆
拉姆
音乐加载中...
0:00