Javascript 语法问题 sessionStorage 值设置

标签 javascript jquery jplayer

<分区>

首先,我应该说我对 JavaScript 不是很有经验,我希望获得一些有关将 sessionStorage 值传递给设置的帮助。

$(document).ready(function(){
    window.userSettings = null;

    $("#jquery_jplayer_1").jPlayer({
        ready: function () {
            $(this).jPlayer("setMedia", {
                title: "TestRadio",
                mp3: "http:/streamlink"
            });
        },
        swfPath: "jplayer/dist/jplayer",
        supplied: "mp3",
        wmode: "window",
        volume: "75",
        useStateClassSkin: true,
        loop: true,
        autoBlur: true,
        smoothPlayBar: true,
        keyEnabled: true,
        remainingDuration: false,
        toggleDuration: false
    });
});

function storeUserjPlayerSettings(){

var settings = new Object();

settings.volume = $("#jquery_jplayer_1").data().jPlayer.status.volume;
settings.paused = $("#jquery_jplayer_1").data().jPlayer.status.paused;
settings.src = $("#jquery_jplayer_1").data().jPlayer.status.src;

sessionStorage.setItem('userjPlayerSettings', JSON.stringify(settings));
window.userSettings = JSON.parse(sessionStorage.getItem('settings'));
}

我想做的是将 settings.volume 网络存储值传递给音量参数

$("#jquery_jplayer_1").jPlayer({
            ready: function () {
                $(this).jPlayer("setMedia", {
                    title: "TestRadio",
                    mp3: "http:/streamlink"
                });
            },
            swfPath: "jplayer/dist/jplayer",
            supplied: "mp3",
            wmode: "window",
            **volume**: "75",
            useStateClassSkin: true,
            loop: true,
            autoBlur: true,
            smoothPlayBar: true,
            keyEnabled: true,
            remainingDuration: false,
            toggleDuration: false
        });
    });

最佳答案

您正在较早地保存卷,因此您只需在需要时以相反的过程访问它。

例如,将 volume: 75 初始化更改为调用从您保存的设置中获取音量的函数:volume: volumeSetting()

下面是一个您可以如何编写该函数本身的示例:

function volumeSetting() {
  var settings = sessionStorage.getItem("userjPlayerSettings");
  if (settings != null) {
     settings = JSON.parse(settings);
     if (typeof settings.volume == 'number')
       return settings.volume;
  }
  return 75;
}

关于Javascript 语法问题 sessionStorage 值设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37281450/

相关文章:

javascript - 在 Javascript 中实现多态性——这看起来怎么样?

javascript - 如何在第一页 100% 完成加载后为后续页面加载图像?

javascript - 拆分数组中的元素并添加换行符,然后加入 - Javascript

javascript - 如果 CDN 不可用,则 RequireJS 回退

jquery - Bootstrap 3 在菜单项单击上隐藏下拉菜单

jplayer - JPlayer 可以播放字节数组中的文件吗?

javascript - jPlayer 视频无法在 iOs - iPad 和 iPhone 中播放

javascript - jQuery 插件干扰/其他 Javascript

jquery - IE7 和 jQuery .html/.empty/.css 未触发

javascript - jPlayer 2.2.0 : display track title in separate div on page load