亚洲精品国产国语,亚洲人成网站色在线观看,1区1区3区4区产品亚洲http://m.tkk7.com/pengo/category/48035.htmlzh-cnThu, 17 Jan 2013 09:23:22 GMTThu, 17 Jan 2013 09:23:22 GMT60php、js、java的正則替換文本方式制作模板內容輸出http://m.tkk7.com/pengo/archive/2013/01/17/394333.htmlpenngopenngoWed, 16 Jan 2013 17:18:00 GMThttp://m.tkk7.com/pengo/archive/2013/01/17/394333.htmlhttp://m.tkk7.com/pengo/comments/394333.htmlhttp://m.tkk7.com/pengo/archive/2013/01/17/394333.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/394333.htmlhttp://m.tkk7.com/pengo/services/trackbacks/394333.html在制作模板內容輸出時,很經常會使用<%=%>之類的占位符,用正則的方式很方便替換這個內容,工作中只接觸到java、php、js,三種語言的簡單的實現方式:
java版
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TestRex {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<String, String>();
        map.put("name", "penngo");
        map.put("date", "2013-01-17");
        Pattern p = Pattern.compile("<%=(\\w+?)%>");
        String str = "<%=date%>, Hello <%=name%>";
        Matcher m = p.matcher(str);
        StringBuffer sb = new StringBuffer();
        boolean result = m.find();
        while (result) {
            String key = m.group(1);
            String value = map.get(key);
            m.appendReplacement(sb, value);
            result = m.find();
        }
        m.appendTail(sb);
        System.out.println(sb.toString());
    }
}

php版
<?php
    $data = array('name'=>'penngo', 'date'=>'2013-01-17');
    function replaceStr($key$data){
        return $data[$key];
    }
    $str = '<%=date%>, Hello <%=name%>';
    $str = preg_replace("/<%=(\w+?)%>/ise", "replaceStr('\\1', \$data)", $str);
    echo $str;
?>

js版
<html>
<head>
    <meta charset="UTF-8">
    <script type="text/javascript">
    var date = {'name':'penngo', 'date':'2013-01-17'};
    var str = '<%=date%>, Hello <%=name%>';
    str = str.replace(/<%=(\w+?)%>/g, function($0, $1){
        var value = date[$1];
        return value;
    });
    document.write(str);
    </script>
</head>
<body>
    
</body>
</html>

運行結果輸出:
2013-01-17, Hello penngo


penngo 2013-01-17 01:18 發表評論
]]>
js日期處理類http://m.tkk7.com/pengo/archive/2013/01/16/394269.htmlpenngopenngoTue, 15 Jan 2013 17:15:00 GMThttp://m.tkk7.com/pengo/archive/2013/01/16/394269.htmlhttp://m.tkk7.com/pengo/comments/394269.htmlhttp://m.tkk7.com/pengo/archive/2013/01/16/394269.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/394269.htmlhttp://m.tkk7.com/pengo/services/trackbacks/394269.html/** * 日期處理工具類 */ var DateUtil =&nbs...  閱讀全文

penngo 2013-01-16 01:15 發表評論
]]>
web三種跨域請求數據方法http://m.tkk7.com/pengo/archive/2013/01/11/394103.htmlpenngopenngoFri, 11 Jan 2013 05:19:00 GMThttp://m.tkk7.com/pengo/archive/2013/01/11/394103.htmlhttp://m.tkk7.com/pengo/comments/394103.htmlhttp://m.tkk7.com/pengo/archive/2013/01/11/394103.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/394103.htmlhttp://m.tkk7.com/pengo/services/trackbacks/394103.html以下測試代碼使用php,瀏覽器測試使用IE9,chrome,firefox,safari

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js"></script>
    <script type="text/javascript" id="loadjson"></script>
    <script type="text/javascript">
    
// 第一種
    // test1.php在服務器設置請允許跨域(注意:IE9測試不通過)
    $.ajax({
           type: 'POST',
           url: 'http:
//127.0.0.1:8081/test/test1.php',
           data: 'name=penngo',
           dataType: 'json',
           success: 
function(msg){
              $('#json').html(JSON.stringify(msg));
           }
        });

    
/* 
    第二種JSONP:
    在客戶端動態注冊一個函數function test(data),然后將函數名傳到服務器,服務器返回一個test({json})到客戶端運行,這樣就調用客戶端的function test(data),從而實現了跨域,jquery已經支持jsonp
    
*/
    
// test2.php使用jsonp
    $.ajax({
           type: 'GET',
           url: 'http:
//127.0.0.1:8081/test/test2.php?callback=?',
           data: 'name=penngo',
           dataType: 'jsonp',
           success: 
function(msg){
              $('#jsonp').html(JSON.stringify(msg));
           }
        });

    
/*
    第三種,原理與jsonp類似,web頁面上調用js文件時不受跨域影響,
    只要利用<script>標簽的src屬性,動態加載js方式就能跨域,該方式為異步,通過testjs()回調
    
*/
    
var testjs = function(msg){
         $('#js').html(JSON.stringify(msg));
    }
    $('#loadjson')[
0].src = 'http://127.0.0.1:8081/test/test3.php?method=testjs&name=penngo';
    </script>

</head>
<body>
    header跨域:
    <div id="json">
        
    </div>
    <br/>
    jsonp跨域:
    <div id="jsonp">
        
    </div>
    <br/>
    js請求實現跨域:
    <div id="js">
        
    </div>
</body>
</html>

服務器端處理
test1.php
<?php
    header("Access-Control-Allow-Origin: *");
    $name = $_REQUEST['name'];
    $result = array('success'=>1, 'name'=>$name);
    echo json_encode($result);
?>

test2.php
<?php
    $callback = $_REQUEST['callback'];
    $name = $_REQUEST['name'];
    $result = array('success'=>1, 'name'=>$name);
    $jsonData = json_encode($result);
    echo $callback . "(" . $jsonData . ")";
?>

test3.php
<?php
    $method = $_REQUEST['method'];
    $name = $_REQUEST['name'];
    $result = array('success'=>1, 'name'=>$name);
    $jsonData = json_encode($result);
    header('Content-type:application/x-javascript');
    echo "$method($jsonData);";
?>



IE9測試,頁面輸出內容
header跨域: 
jsonp跨域: 
{"success":1,"name":"penngo"}
js請求實現跨域: 
{"success":1,"name":"penngo"}
chrome,firefox,safari測試,頁面輸出內容
header跨域:
{"success":1,"name":"penngo"}
jsonp跨域:
{"success":1,"name":"penngo"}
js請求實現跨域:
{"success":1,"name":"penngo"}


penngo 2013-01-11 13:19 發表評論
]]>
個人平時常用的兩種js類寫法http://m.tkk7.com/pengo/archive/2013/01/08/393931.htmlpenngopenngoMon, 07 Jan 2013 16:20:00 GMThttp://m.tkk7.com/pengo/archive/2013/01/08/393931.htmlhttp://m.tkk7.com/pengo/comments/393931.htmlhttp://m.tkk7.com/pengo/archive/2013/01/08/393931.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/393931.htmlhttp://m.tkk7.com/pengo/services/trackbacks/393931.html<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html>
  <head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
    <script type="text/javascript">
    
// 第一種
    var Test1 = function(){
        
var name = "";
        
this.setName = function(username){
            name 
= username;
        }
        
this.getName = function(){
            
return name;
        }
        
this.sayHello = function(){
            
return "Hello " + this.getName();
        }
        
return this;
    }();
    Test1.setName(
"penngo");
    console.log(
"Test1======" + Test1.getName());
    console.log(
"Test1======" + Test1.sayHello());

    
// 第二種
    var Test2 = function(){
        
var name = "";
        
return {
            setName:
function(username){
                name 
= username;
            },
            getName:
function(){
                
return name;
            },
            sayHello:
function(){
                
return "Hello " + this.getName();
            }
        };
    }();
    Test2.setName(
"penngo");
    console.log(
"Test2======" + Test2.getName());
        console.log(
"Test2======" + Test2.sayHello());
    
</script>
  </head>
  <body>
  </body>
  </html>

penngo 2013-01-08 00:20 發表評論
]]>
CKEDITOR編輯操作數據方法http://m.tkk7.com/pengo/archive/2012/09/13/387650.htmlpenngopenngoThu, 13 Sep 2012 09:14:00 GMThttp://m.tkk7.com/pengo/archive/2012/09/13/387650.htmlhttp://m.tkk7.com/pengo/comments/387650.htmlhttp://m.tkk7.com/pengo/archive/2012/09/13/387650.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/387650.htmlhttp://m.tkk7.com/pengo/services/trackbacks/387650.html
<textarea id="content" name="content" cols="" rows="10" style="height:700px;" ></textarea>

初始化
editor = $("#content").ckeditor();
$("#oldcontent").ckeditor({height:300,toolbar:[]});

操作方法
CKEDITOR.instances.oldcontent.setReadOnly(false);
CKEDITOR.instances.content.setData("Pacer");
CKEDITOR.instances.content.insertHtml("<img src=''>");
content為控件的id


penngo 2012-09-13 17:14 發表評論
]]>
html編輯器(自己記錄用)http://m.tkk7.com/pengo/archive/2011/03/12/346111.htmlpenngopenngoSat, 12 Mar 2011 14:39:00 GMThttp://m.tkk7.com/pengo/archive/2011/03/12/346111.htmlhttp://m.tkk7.com/pengo/comments/346111.htmlhttp://m.tkk7.com/pengo/archive/2011/03/12/346111.html#Feedback0http://m.tkk7.com/pengo/comments/commentRss/346111.htmlhttp://m.tkk7.com/pengo/services/trackbacks/346111.html這幾天有點蛋疼,有個新系統的HTML編輯器居然在IE6下部分功能不能用,想讓客戶升級下IE版本,結果客戶的機子有些舊系統只能在IE6下運行,不能升級。只好用最笨的方法把部分代碼抽出來在IE6下調試。本文是把自己寫的一小部分調試代碼記錄下,下次找起來時方便點。
exec.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    
<title>無標題頁</title>
</head>
<body>
<script language="javascript">
var brower = function(){
    
var a = navigator.userAgent.toLowerCase();
    
if(a.indexOf("msie"> -1){
        
var re = new RegExp("msie\\s?([\\d\\.]+)""ig");
        
var arr = re.exec(a);
        
if(parseInt(RegExp.$1>=5.5){
            
return "IE";
        }

    }

    
else if(a.indexOf("firefox"> -1){
        
return "FF";
    }

}
();

function execCom(cmd){
    document.execCommand(cmd, 
"""");
}

function code(){
    
var fram = document.getElementById("editFrame").contentWindow;
    
var bo = fram.document.body.innerHTML;
    document.getElementById(
"myarea").value = bo;
}

function inserCode(){
    
var value = document.getElementById("myarea").value;
    
var fram = document.getElementById("editFrame").contentWindow;
    fram.document.body.innerHTML 
= value;
}

</script>



<table>
    
<tr>
        
<td colspan="2">
            
<input type="button" onclick="execCom('UNDO')" value="撤消" />
            
<input type="button" onclick="execCom('REDO')" value="重復" />
            
<input type="button" onclick="code()" value="查看源碼" />
            
<input type="button" onclick="inserCode()" value="插入源碼" />
        
</td>
    
</tr>
    
<tr>
        
<td>
            
<textarea id="myarea" style="background-color:#99b6d5;width:200px; height:400px;" cols="10" >  
            
</textarea>
        
</td>
        
<td>
            
<iframe id="editFrame" src="my.htm" width="300px" height="400px" />
        
</td>
    
</tr>
    
<tr>
        
<td>
            
        
</td>
    
</tr>
</table>
</body>
</html>

my.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    
<title>無標題頁</title>
</head>
<body contentEditable="true" style="background-color:#99b6d5;">
<input type="button" value="確認" />
<input type="text" />
<input type="button" value="復選框" />
</body>
</html>

效果圖:


penngo 2011-03-12 22:39 發表評論
]]>
主站蜘蛛池模板: 性xxxxx大片免费视频| 日韩精品视频免费在线观看| 亚洲另类精品xxxx人妖| 免费无码看av的网站| 国产免费人成视频尤勿视频| 亚洲精品无码久久久久久久| 日本xxwwxxww在线视频免费| 日韩电影免费在线观看中文字幕 | 久久亚洲精品AB无码播放| 1000部夫妻午夜免费| 免费国产va视频永久在线观看| 亚洲国产一区二区a毛片| 日韩免费高清一级毛片在线| 最近中文字幕大全免费版在线 | 7723日本高清完整版免费| 黄页网址在线免费观看| 亚洲国产精品线观看不卡| 亚洲国模精品一区| 少妇高潮太爽了在线观看免费| 一区二区三区免费精品视频| 亚洲va乱码一区二区三区| 久久国产亚洲精品麻豆| 四虎国产精品免费久久影院| 麻花传媒剧在线mv免费观看 | 亚洲三级高清免费| 国产一二三四区乱码免费| 亚洲AV永久无码精品一福利| 亚洲第一网站免费视频| 一本色道久久综合亚洲精品高清| 噜噜嘿在线视频免费观看| 69精品免费视频| 两个人www免费高清视频| 美女被免费视频网站| 亚洲最大的黄色网| 18亚洲男同志videos网站| 亚洲中文字幕无码爆乳AV| 四虎永久成人免费| 日韩免费视频观看| 精品久久久久久久免费人妻| 免费看黄视频网站| 四虎在线成人免费网站|