第73篇 webrtc一对一(二)及php及JS

关键字:计时研究, 火狐浏览器/chome关闭当前页面,php字符串填充函数, jQuery事件,md5加密

一、webrtc一对一

1.1 计时研究

1) 场景是:现在需要记录一个用户的登陆到离开的时间段,单击按钮,会调用一个函数startTimer();

<buttonid="start_anwser1" οnclick="startTimer()"style="width:220px;font-size:36px;">计时开始</button>

2) startTimer()函数

functionstartTimer( )

{

  minutes = -1;

  ticker = setInterval("tick( )", 60000);

  tick( );

}

由上程序可知,startTimer()函数每隔一秒(60000ms)会执行一次tick( )函数。

setInterval()方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval()方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

3)tick()函数

上面函数tick()中,用到了一个Math.floor()函数,Math.floor() 方法可对一个数进行下舍入。floor() 方法执行的是向下取整计算,它返回的是小于或等于函数参数,并且与之最接近的整数。看个例子:

注:这个不是四舍五入,得出的数小于等于原来的数。

 function tick( )

 {

   ++minutes; //因为上面的计时函数,是每隔一分钟执行(6000ms=60s=1minute)一次,所以,执行一次就加1分钟。

   var mns = minutes;  //把得到的分钟数赋予一个变量mns

   var hrs = Math.floor( mns / 60 ); //分钟数转换为小时数

   mns %= 60; //每隔60分钟循环一次,不会出现00:61的情况。

   var pretty = ( hrs < 10 ? "0" :"" ) + hrs + ":" + ( mns < 10 ? "0" :"" ) + mns;

console.log('pretty',pretty);

}

hrs <10 ? "0" : ""这句话的含义是:如果时间数字小于10,就加个0,比方说9会显示成09,8会显示成08,一旦大于等于直接显示10点,11点等等。

1.2 建个停止答疑按钮,关闭页面

开始答疑按钮解析:

          if(connection.getAllParticipants().join(', ') != connection.sessionid) {

                                            varstart_anwserBtn = document.getElementById("start_anwser");

                                               start_anwserBtn.style.display= "block";

                     }

注:当老师和学生没建立连接时,开始答疑按钮为灰色。打开页面这个按钮是灰色的,就是由这条语句控制的,因为打开页面时,还没建立连接;之后,建立连接后,点击开始答疑按钮,这个按钮变灰色,是因为下面这条jQuery语句:

1.3 点按钮,关闭页面

1)火狐浏览器,可以用下面的函数:

但前提必须把火狐的一项dom.allow_scripts_to_close_windows改为:true.是因为firefox默认不能关闭用户打开的网页,可以这样设置firefox。打开firefox,在地址栏输入about:config

找到dom.allow_scripts_to_close_windows这项并改为true。

2)chrome浏览器可以用如下方法关闭当前页面

 在网上找到了4种方法,经测试都是可以的,具体如下:

 

                //1 这种方法可用-------------------------------------------------yes

               window.open(location,'_self','');

               window.close();

 

                //2 这种方法可用-------------------------------------------------yes

                var customWindow =window.open(location,'_self','');

                customWindow.close();

 

                //3 这种方法可用-----------------------------------------------------yes

                var pageUrl =window.location.href;

                window.open(pageUrl, '_self','');

                window.close();

 

                //4 这种方法可用------------------------------------------------------yes

                 open(location,'_self').close();

 

二、php

2.1 字符串填充函数

 str_pad(“字符串”,长度,”填充的内容”,”填充的方向”)

 填充的方向是可选的,默认是向右侧填充;

填充方向有:

str_pad_both:左右两边同时进行填充,如果填充为奇数,右侧多填充。

str_pad_left:左侧填充;

str_pad_right:右侧填充。

看个例子:

从运行结果可以看出:

1) 如果填的字符串长度小于或等于原字符串长度,则不进行填充,也不对原字符串进行截断;

2) 如果填充时,填写的填充长度大于原字符串长度,且不指定填充内容,则默认填充空格且填充到右侧。

3) 如果选择两侧填充,需要填充的内容为奇数个时,右边会比左边多一个。STR_PAD这个函数大小写都成,但STR_PAD_BOTH, STR_PAD_LEFT, STR_PAD_RIGHT必须为大写。

2.2 字符串翻转函数

strrev(),就是把给的字符串字母顺序由前到后改为由后往前。看个例子:

2.3 md5加密

  这个方法主要用于各大网站登陆时的身份认证,安全性较高,不过,据说现在能破解。

看个例子:

运行结果如下:

注:程序中用到了html代码嵌套到php中,因为没连数据库,只能做上述简单验证。

三、JS之jQuery

3.1 jQuery事件

dblclick() 方法触发 dblclick 事件,或规定当发生 dblclick 事件时运行的函数,看个例子:

双击上面的字,就会消失。

注:dblclick()方法就是双击,触发一个事件。

3.2 mouseenter()

当鼠标指针穿过元素时,会发生 mouseenter 事件。

mouseenter() 方法触发 mouseenter 事件,或规定当发生 mouseenter 事件时运行的函数,看个例子:

运行结果如下:

2016年10月19日星期三

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值