一个技术宅的个人博客

JavaScript使浏览器不使用缓存

孙健阅读(85)

方法一:

script标签中src链接,或者link标签的href链接,后面加上版本号:

<script type='text/javascript' src='//site.com/js.js?v=1.0.0'><\/script>
<link rel="stylesheet" href="index.css?time=20180910">

方法二:

js生成时间戳:

document.write('<link rel="stylesheet" href="index.css?time='+new Date().getTime()+'">');。

方法三:

css的meta标签设置不缓存

<meta HTTP-EQUIV="pragma" CONTENT="no-cache">
<meta HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<meta HTTP-EQUIV="expires" CONTENT="0">
<meta http-equiv="Cache" content="no-cache">

Bshare,JiaThis以及百度分享代码在HTTPS下失效的问题

孙健阅读(94)

使用Bshare等分享代码,在网站加了HTTPS之后,会失效,因为这个script里面引了一个非https的js文件。如此一来。解决方案有二:

1.保留http连接,在分享的时候使用http连接。但问题是你不可能把这个办法告诉所有用户,所以这一条不推荐使用。

2.将share代码中的JS引到本地,这样整个JS就都在https的服务器之下,会被识别为安全,则可以显示:

如上图,添加的分享代码,调用的src之中,资源是百度的js文件,而那个http是没有s的。因而需要你手动吧js文件的内容导入到自己本地服务器,这样才可以正常使用分享代码。

3.如果以上方法都不可行,你可以在head头加上这段代码。

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />

php 计算两个时间戳相隔的时间的函数(小时)

孙健阅读(473)

计算两个时间戳相隔的时间,以前脚本之家发布过具体到天数的,这个可以具体到小时数,需要的朋友可以参考下。
这个是可以具体到小时的php代码
复制代码代码如下:

/* Author: 杨宇 yangyu@sina.cn */
//输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表示输入的两个时间相差2小时10分钟
function hours_min($start_time,$end_time){
if (strtotime($start_time) > strtotime($end_time)) list($start_time, $end_time) = array($end_time, $start_time);
$sec = $start_time - $end_time;
$sec = round($sec/60);
$min = str_pad($sec%60, 2, 0, STR_PAD_LEFT);
$hours_min = floor($sec/60);
$min != 0 && $hours_min .= ':'.$min;
return $hours_min;
}

下面这个是具体到天数的函数代码js
复制代码代码如下:

function get_date_different(){
var _date_1 = document.getElementById('date1').value.replace(/(^\s*)|(\s*$)/g,'');
var _date_2 = document.getElementById('date2').value.replace(/(^\s*)|(\s*$)/g,'');
_date_1 = new Date(_date_1);
_date_2 = new Date(_date_2);
var days= _date_2.getTime() - _date_1.getTime();
var time = parseInt(days / (1000 * 60 * 60 * 24));
document.getElementById('content').innerHTML = '两个日期相差 '+time+' 天!';}

JS,Javascript获取url参数

孙健阅读(399)

以下JS函数用于获取url参数:

function getQueryVariable(variable)
{
       var query = window.location.search.substring(1);
       var vars = query.split("&");
       for (var i=0;i<vars.length;i++) {
               var pair = vars[i].split("=");
               if(pair[0] == variable){return pair[1];}
       }
       return(false);
}

使用实例
url 实例:

http://www.sunjian.cc/index.php?id=1&image=awesome.jpg

调用 getQueryVariable(“id”) 返回 1。

调用 getQueryVariable(“image”) 返回 “awesome.jpg”。