<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[javaSamBlog]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/sfSam</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; sfSam]]></copyright><item><title><![CDATA[微信2.0分享自定义标题、图片、摘要、链接]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84763709</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84763709</guid><author>sfSam</author><pubDate>Thu, 28 Jan 2016 11:00:49 +0800</pubDate><description><![CDATA[
今天做了一个微信自定义分享图片、标题、内容、链接的页面。因为微信1.0WeixinJSBridge的功能已经大部分停用，所以要用到微信2.0jweixin-1.0.0.js。下面详解一下使用的步骤：
1、首先登陆微信公众号【需要时已经认证过的公众号哦】，在公众号设置里填写自己网站的域名
 2、在基本设置里获取自己网站的appid和秘钥 3、根据秘钥和appid生成token，获取token...]]></description><category></category></item><item><title><![CDATA[详解css3使用border属性实现各种三角形及其他复杂图形的原理]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84762565</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84762565</guid><author>sfSam</author><pubDate>Thu, 21 Jan 2016 13:20:17 +0800</pubDate><description><![CDATA[
最近看到网上有很多用css3实现三角形及各种复杂图形的代码，看到代码的时候一头雾水，索性用半天的时间好好研究了一下背后的实现原理。话不多说，先上代码：
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;
&amp;lt;style type=&quot;text/css&quot;&amp;gt;
p{
 float:left;
margin-right:20px;
}
#triangle-full {
   ...]]></description><category></category></item><item><title><![CDATA[js验证正则大全]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84730578</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84730578</guid><author>sfSam</author><pubDate>Tue, 30 Jun 2015 13:41:27 +0800</pubDate><description><![CDATA[
var regexEnum = 
{
	intege:&quot;^-?[1-9]\\d*$&quot;,					//整数
	intege1:&quot;^[1-9]\\d*$&quot;,					//正整数
	intege2:&quot;^-[1-9]\\d*$&quot;,					//负整数
	num:&quot;^([+-]?)\\d*\\.?\\d+$&quot;,			//数字
	num1:&quot;^[1-9]\\d*|0$&quot;,					//正数（正整...]]></description><category></category></item><item><title><![CDATA[Java POI 操作excel 无硬编码，反射，史上最牛]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84705699</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84705699</guid><author>sfSam</author><pubDate>Wed, 11 Mar 2015 11:49:21 +0800</pubDate><description><![CDATA[


import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Field;
import java.lang.re...]]></description><category></category></item><item><title><![CDATA[JAVA IO 字节流实现文件copy效率比较]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84692661</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84692661</guid><author>sfSam</author><pubDate>Wed, 24 Dec 2014 13:32:58 +0800</pubDate><description><![CDATA[
package jonavin.io;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java...]]></description><category></category></item><item><title><![CDATA[javascript判断字符串是否是回文的算法实现]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687736</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687736</guid><author>sfSam</author><pubDate>Mon, 24 Nov 2014 22:40:11 +0800</pubDate><description><![CDATA[
    var str = &quot;reaaer&quot;,
	    len = str.length,
		e=(!!(len%2)),
	    mid = e?Math.floor(len/2):(len/2),
	    prev = str.substring(0,mid),
	    next = e?str.substring(mid+1):str.substring(mid),...]]></description><category></category></item><item><title><![CDATA[HTML5学习记录-----canvas学习之动画快照]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687727</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687727</guid><author>sfSam</author><pubDate>Mon, 24 Nov 2014 21:33:57 +0800</pubDate><description><![CDATA[
canvas动画快照
欢迎大家有好点建议可以提。js高级扣扣群：170798851 欢迎来交流学习
    git项目地址：https://github.com/Jonavin/HTML5_Study
 
    重点思路：
snapshotBtn.onclick = function(e){
        var dataUrl;
        if(snapshotBtn...]]></description><category></category></item><item><title><![CDATA[HTML5学习记录-----canvas学习之鼠标选取放大图像]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687496</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687496</guid><author>sfSam</author><pubDate>Sun, 23 Nov 2014 21:53:12 +0800</pubDate><description><![CDATA[
canvas鼠标选取放大
欢迎大家有好点建议可以提。js高级扣扣群：170798851 欢迎来交流学习
    git项目地址：https://github.com/Jonavin/HTML5_Study
 

/**
 * Created by wsf on 2014-11-23.
 */
;//分号为了保证代码合并时不出错
(function(win){
     &quot;u...]]></description><category></category></item><item><title><![CDATA[HTML5学习记录-----canvas学习之获取鼠标在canvas上的坐标位置]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687383</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687383</guid><author>sfSam</author><pubDate>Sat, 22 Nov 2014 20:44:16 +0800</pubDate><description><![CDATA[
canvas坐标
欢迎大家有好点建议可以提。js高级扣扣群：170798851 欢迎来交流学习
    git项目地址：https://github.com/Jonavin/HTML5_Study
 

/**
 * Created by wsf on 2014-11-22.
 *
 */
;
(function(win){
    //局部变量（这样定义变量会增加链深，...]]></description><category></category></item><item><title><![CDATA[HTML5学习记录-----canvas学习之钟表]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687369</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687369</guid><author>sfSam</author><pubDate>Sat, 22 Nov 2014 19:08:42 +0800</pubDate><description><![CDATA[
canvas钟表代码，
欢迎大家有好点建议可以提。js高级扣扣群：170798851 欢迎来交流学习 
    git项目地址：https://github.com/Jonavin/HTML5_Study
 
/**
 * Created by Administrator on 2014-11-22.
 */
(function(win){
   var doc = win.d...]]></description><category></category></item><item><title><![CDATA[ajax.js]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687045</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687045</guid><author>sfSam</author><pubDate>Thu, 20 Nov 2014 21:38:01 +0800</pubDate><description><![CDATA[



如果你是 javascript高手，请来这里吧，扣扣群 170798851，我们一起进步。
 

/**
@param {string} [sName]
@param {string} [location]
@return {XMLHttpRequest}
*/
ActiveXObject = function(sName,location) {};

/**...]]></description><category></category></item><item><title><![CDATA[html5 规范中新增的api]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84687044</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84687044</guid><author>sfSam</author><pubDate>Thu, 20 Nov 2014 21:36:58 +0800</pubDate><description><![CDATA[
如果你是 javascript高手，请来这里吧，扣扣群 170798851，我们一起进步。

/**
@type {number}
@const
*/
Blob.prototype.size = 0;
/**
@type {string}
@const
*/
Blob.prototype.type = null;
/**
@param {number} [start]...]]></description><category></category></item><item><title><![CDATA[ie兼容问题----工作中遇见记录（持续更新）]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84685971</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84685971</guid><author>sfSam</author><pubDate>Sun, 16 Nov 2014 14:18:37 +0800</pubDate><description><![CDATA[
如果你是 javascript高手，请来这里吧，扣扣群 170798851，我们一起进步。
这些问题会持续更新解决办法。
 

       Arguments对象
    console.log(arguments)    ie8以下（包含）      Arguments：[object Object]
    ie8以上 Arguments：[object Arguments]...]]></description><category></category></item><item><title><![CDATA[被Arguments对象坑了。]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84685786</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84685786</guid><author>sfSam</author><pubDate>Fri, 14 Nov 2014 20:47:14 +0800</pubDate><description><![CDATA[
当判断一个对象是否是Arguments对象时，我们会这么写
Object.toString.call(arguments) == &quot;[object Arguments]&quot;;
谨记千万不要这样写，因为它在ie8以下是&quot;[object Object]&quot; ----- 跟其他object对象没有区别。
...]]></description><category></category></item><item><title><![CDATA[input onpaste事件]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84685174</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84685174</guid><author>sfSam</author><pubDate>Wed, 12 Nov 2014 14:08:17 +0800</pubDate><description><![CDATA[
function afterPaste() {
    var clipData = clipboardData;
    var text = clipData.getData('text'); //剪贴板数据 
    var reg = /\s/g;
    var ntxt = text.replace(reg, &quot;&quot;);
    var that = this;
    ...]]></description><category></category></item><item><title><![CDATA[javascript正则表达式学习——顺序肯定环视，顺序否定环视]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84683260</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84683260</guid><author>sfSam</author><pubDate>Sun, 02 Nov 2014 00:43:04 +0800</pubDate><description><![CDATA[
//举例说明。
//经常看到有人为了给数字加千分号（，） 例 1344444 ---&amp;gt; 13,444,444;写一大堆代码.
//其实没必要，这里给出正则的解决办法（js版）
var str = &quot;1212123213213&quot;;
var reg = /(\d)(?=(\d{3})+(?!\d))/g;
var reg1 = /(?=(\d{3})+(?!\d))/g;//与上边...]]></description><category></category></item><item><title><![CDATA[javascript小工具之——cookie操作]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84683232</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84683232</guid><author>sfSam</author><pubDate>Sat, 01 Nov 2014 20:28:47 +0800</pubDate><description><![CDATA[
var docCookies = {
  getItem: function (sKey) {
    return decodeURIComponent(document.cookie.replace(new RegExp(&quot;(?:(?:^|.*;)\\s*&quot; + encodeURIComponent(sKey).replace(/[\-\.\+\*]/g, &quot;\\$&amp;amp;&quot;) + &quot;...]]></description><category></category></item><item><title><![CDATA[javascript本地缓存之localStorage，sessionStorage等]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84682256</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84682256</guid><author>sfSam</author><pubDate>Tue, 28 Oct 2014 11:00:59 +0800</pubDate><description><![CDATA[


如果你是 javascript高手，请来这里吧，扣扣群 170798851，我们一起进步。
 

/**
 * @author wsf 本地缓存对象
 */
(function(win){
	var doc = window.document,//文档对象
	lstore = &quot;localStorage&quot;,//本地存储对象
	sstore = &quot;sessionStor...]]></description><category></category></item><item><title><![CDATA[javascript本地缓存之userData（ie专用）]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84682188</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84682188</guid><author>sfSam</author><pubDate>Mon, 27 Oct 2014 23:28:33 +0800</pubDate><description><![CDATA[
/**
 *storage 对象
 */
function storage (){
	var args = [].slice.call(arguments);
	this.storeName = location.hostname||&quot;defaultData&quot;;
	this.store = {};
	this.inited = false;
}

storage.protot...]]></description><category></category></item><item><title><![CDATA[javascript 排序，分组小工具 - 支持JSON数组 原生数组（学习，持续更新）]]></title><link>https://blog.youkuaiyun.com/sfSam/article/details/84681533</link><guid>https://blog.youkuaiyun.com/sfSam/article/details/84681533</guid><author>sfSam</author><pubDate>Fri, 24 Oct 2014 10:38:02 +0800</pubDate><description><![CDATA[
/**
 * @author wsf 数据分组，排序js
 */
;
(function(win, $) {
	var _jsUtils = null;
	if(jsUtils)
		_jsUtils = new jsUtils();//js工具对象
	
	//分组排序对象
	function groupSorter() {
		//数据
		this.data = n...]]></description><category></category></item></channel></rss>