前端两个页面之间传递状态

题记:好久好久没有记录东西了,由于公司最近两个月的一个量表系统项目,天天都在赶需求,清华玉泉医院的护士长也真是实在难缠!现在这个项目基本完成,有好多东西需要记录!就先整理一下简单的东西吧!

项目需求:患者答量表之前可以选择是否使用语音!
这就相当于在一个页面发送请求到另一个页面,使用就应该使得语音自动播放,不使用就应该隐藏audio标签组。通过查阅资料,最简单的方法就是通过url来传递状态。直接上代码。

   // 是否语音播放弹框
    var fid = $('.formid');
  // alert(fid.eq(0).attr('formid'))
    var tagUse = true;
    $('.main_box a').each(function(i){
        $(this).click(function(){

            $('.main_cover').css('display','block');
            $('.finish').css('display','block');
            $('.use').click(function(){
                tagUse = true;
                $(this).attr('href','../formpreview/index?formid='+fid.eq(i).attr('formid')+'&id='+tagUse+' ');
                $(this).attr('target','_blank');
                $('.main_cover').css('display','none');
                $('.finish').css('display','none');
            });
            $('.no_use').click(function(){
                tagUse = false;
                $(this).attr('href','../formpreview/index?formid='+fid.eq(i).attr('formid')+'&id='+tagUse+' ');
                $(this).attr('target','_blank');
                $('.main_cover').css('display','none');
                $('.finish').css('display','none');
            });
        });
    });

通过传递id是true还是false来确定用户点击的使用还是不使用。在另一个页面通过获取url里传过来的参数来判断!代码如下:

控制语音播放与否
var url=location.search;
if(url.indexOf('?')!=-1){
var str = url.substr(1);
    strs = str.split('&');
    for(var i=0;i<strs.length;i++){
        var value = strs[i].split('=')[1];
    }
}

    if(value=='true'){
    $('.audio_all').css('display','block');
    $('audio').attr('autoplay','autoplay');
    function action(){
        $('#shake_action')[0].play();
    }
    document.addEventListener('touchstart', action, false);
}else{
    $('.audio_all').css('display','none');
    $('audio').removeAttr('autoplay');
}

后来遇到的问题是:在苹果手机和一些其他手机中禁止了audio的autoplay功能,怕浪费流量,所以自动播放的功能不能实现了,所以又把第一页判断是否使用语音的弹框去掉了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值