??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩1区在线,羞羞的网站在线观看,国产精品久久久久白浆http://www.aygfsteel.com/hankchen/category/41475.htmlzh-cnThu, 14 Jan 2010 08:00:52 GMTThu, 14 Jan 2010 08:00:52 GMT60几个有用的jQuery技?/title><link>http://www.aygfsteel.com/hankchen/archive/2010/01/08/308780.html</link><dc:creator>hankchen</dc:creator><author>hankchen</author><pubDate>Fri, 08 Jan 2010 14:24:00 GMT</pubDate><guid>http://www.aygfsteel.com/hankchen/archive/2010/01/08/308780.html</guid><wfw:comment>http://www.aygfsteel.com/hankchen/comments/308780.html</wfw:comment><comments>http://www.aygfsteel.com/hankchen/archive/2010/01/08/308780.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/hankchen/comments/commentRss/308780.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/hankchen/services/trackbacks/308780.html</trackback:ping><description><![CDATA[<p><strong>1.用右键菜单</strong></p> <p> $<span style="color: #009900">(</span>document<span style="color: #009900">)</span>.<span style="color: #660066">ready</span><span style="color: #009900">(</span><span style="color: #003366; font-weight: bold">function</span><span style="color: #009900">(</span><span style="color: #009900">)</span><span style="color: #009900">{</span><br />     $<span style="color: #009900">(</span>document<span style="color: #009900">)</span>.<span style="color: #660066">bind</span><span style="color: #009900">(</span><span style="color: #3366cc">"contextmenu"</span><span style="color: #339933">,</span><span style="color: #003366; font-weight: bold">function</span><span style="color: #009900">(</span>e<span style="color: #009900">)</span><span style="color: #009900">{</span><br />         <span style="color: #000066; font-weight: bold">return</span> <span style="color: #003366; font-weight: bold">false</span><span style="color: #339933">;</span><br />     <span style="color: #009900">}</span><span style="color: #009900">)</span><span style="color: #339933">;</span><br /> <span style="color: #009900">}</span><span style="color: #009900">)</span><span style="color: #339933">;<br /> <br /> </p> <p><strong><strong>2.browser</strong><br /> <br /> </strong><span style="font-style: italic; color: #006600">// Safari</span><br /> <span style="color: #000066; font-weight: bold">if</span><span style="color: #009900">(</span> $.<span style="color: #660066">browser</span>.<span style="color: #660066">safari</span> <span style="color: #009900">)</span><br /> <span style="color: #009900">{</span><br /> <span style="font-style: italic; color: #006600">    //do something</span><br /> <span style="color: #009900">}<br /> </span><br /> //mozilla <br /> if($.browser.mozilla )<br /> {<br />     //do something<br /> }<br />  <br /> <span style="font-style: italic; color: #006600">//Above IE6</span><br /> <span style="color: #000066; font-weight: bold">if</span> <span style="color: #009900">(</span>$.<span style="color: #660066">browser</span>.<span style="color: #660066">msie</span> <span style="color: #339933">&</span><span style="color: #339933">& </span>$.<span style="color: #660066">browser</span>.<span style="color: #660066">version</span> ><span style="color: #cc0000">6</span> <span style="color: #009900">)</span><br /> <span style="color: #009900">{</span><br /> <span style="font-style: italic; color: #006600">    //do something</span><br /> <span style="color: #009900">}</span><br />  <br /> <span style="font-style: italic; color: #006600">// IE6 and below</span><br /> <span style="color: #000066; font-weight: bold">if</span> <span style="color: #009900">(</span>$.<span style="color: #660066">browser</span>.<span style="color: #660066">msie</span> <span style="color: #339933">&</span><span style="color: #339933">& </span>$.<span style="color: #660066">browser</span>.<span style="color: #660066">version</span> <<span style="color: #339933">=</span> <span style="color: #cc0000">6</span> <span style="color: #009900">)</span>  <br /> <span style="color: #009900">{</span><br /> <span style="font-style: italic; color: #006600">    //do something</span><br /> <span style="color: #009900">}<br /> <br /> <strong>3.查存在的元素</strong></p> <p> <span style="color: #000066; font-weight: bold">if</span> <span style="color: #009900">(</span>$<span style="color: #009900">(</span><span style="color: #3366cc">"#someDiv"</span><span style="color: #009900">)</span>.<span style="color: #660066">length</span><span style="color: #009900">)</span> <span style="color: #009900">{</span><br />     <span style="font-style: italic; color: #006600">//yes it does ,do something</span><br /> <span style="color: #009900">}<br /> <br /> <span style="font-family: 'Times New Roman', 'serif'; color: black; font-size: 12pt"><span style="line-height: 150%; font-family: 宋体; color: black; font-size: 12pt"><span style="font-family: 宋体; font-size: 12pt"><strong>Q友情提C:本博文章Ƣ迎转蝲Q但h明出处:hankchenQ?/strong><a title="http://www.aygfsteel.com/hankchen" href="http://www.aygfsteel.com/hankchen"><strong>http://www.aygfsteel.com/hankchen</strong></a><strong>Q?/strong></span></span></span></span></p> </span></span> <img src ="http://www.aygfsteel.com/hankchen/aggbug/308780.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/hankchen/" target="_blank">hankchen</a> 2010-01-08 22:24 <a href="http://www.aygfsteel.com/hankchen/archive/2010/01/08/308780.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jQuery Ajax应用ȝhttp://www.aygfsteel.com/hankchen/archive/2010/01/04/308163.htmlhankchenhankchenMon, 04 Jan 2010 05:27:00 GMThttp://www.aygfsteel.com/hankchen/archive/2010/01/04/308163.htmlhttp://www.aygfsteel.com/hankchen/comments/308163.htmlhttp://www.aygfsteel.com/hankchen/archive/2010/01/04/308163.html#Feedback0http://www.aygfsteel.com/hankchen/comments/commentRss/308163.htmlhttp://www.aygfsteel.com/hankchen/services/trackbacks/308163.html Q友情提C:本博文章Ƣ迎转蝲Q但h明出处:陈新汉,http://www.aygfsteel.com/hankchenQ?br />
  jQuery提供了简单而强大的选择器功能,同时?/span>Ajax操作也给Z很好的支持。在Ajax斚wQ?/span>jQuery除了提供底层?/span>jQuery.ajax()Ҏ外,也提供了下面的简单方法:

Q?Q?span style="font: 7pt 'Times New Roman'">       jQuery.get(url, [data], [callback], [type])

Q?Q?span style="font: 7pt 'Times New Roman'">       jQuery.getJSON(url, [data], [callback])

Q?Q?span style="font: 7pt 'Times New Roman'">       jQuery.getScript(url, [callback])

Q?Q?span style="font: 7pt 'Times New Roman'">       jQuery.post(url, [data], [callback], [type])

׃jQuery.ajax()功能比较强大Q可配置的参数比较多Q现在主要对q个Ҏ的注意事进行ȝ?/span>

1.       jQuery.ajax()默认是以异步的方式请求的Q如果需要同步,使用参数async为false。因为有些应用必d步请求数据的。例如,某些Flash?/span>JS交互应用中,h一?/span>JS函数需要马上得到返回数据。此Ӟ必须采用同步?/span>Ajax调用方式?/span>

2.       Ajax如果?/span>GethQ返回的数据一般会被浏览器~存Q如果不惌~存Q可以设|?/span>cache参数?/span>falseQ或者发送请求是带上旉戻Iq样览器会认ؓ是新的请求,而重C服务器加载数据。当Ӟ如果?/span>POST发送的h则不会被~存?/span>

3.       dataTypeQ?/span>预期服务器返回的数据cd。如果不指定Q?/span>jQuery 自动根?/span> HTTP ?/span> MIME 信息q回 responseXML ?/span> responseTextQƈ作ؓ回调函数参数传递,可用?/span>:

Q?/span>1Q?/span>"xml": q回 XML 文档Q可?/span> jQuery 处理?/span>

Q?/span>2Q?/span>"html": q回U文?/span> HTML 信息Q包含的script标签会在插入dom时执行?/span>

Q?/span>3Q?/span>"script": q回U文?/span> JavaScript 代码。不会自动缓存结果。除非设|了"cache"参数?/span>'''注意Q?/span>'''在远E请求时(不在同一个域?/span>)Q所?/span>POSTh都将转ؓGETh?/span>(因ؓ?/span>DOM?/span>script标签来加?/span>)

Q?/span>4Q?/span>"json": q回 JSON 数据 ?/span>

Q?/span>5Q?/span>"jsonp": JSONP 格式。?/span> JSONP 形式调用函数Ӟ?/span> "myurl?callback=?" jQuery 自动替?/span> ? 为正的函数名,以执行回调函数?/span>

Q?/span>6Q?/span>"text": q回U文本字W串

         其中Q?/span>"script"?/span>"json"讄可以解决Ajax的跨域问题?/span>

4.       如果服务器返回的一个字W串或数|则用普通的ajax调用卛_?/span>

如果服务器返回的是一?/span>JSON对象Q那么最好采?/span>jQuery.getJSON的方式,或者设|?/span>dataType=json。因为浏览器解析JSON对象需要时_直接q回JSON对象Q节省解析时_可以避免在服务器明明有返回数据,但是览器得不到的错误?/span>

5. Ajax调用是需要时间的Q所以一般将Ajax调用后的处理代码全部攑֜回调Ҏ中。不能采用这L处理方式Q?/span>

function getMyPrizeList(){

    if(isNotEmpty(uid)){

        var obj=new Object();

        try{

           jQuery.ajax({type:"GET",url:"someurl",async:false,cache:false,dataType:"script",scriptCharset:"gbk",success:function(json){

                     obj=json;

                  }

              });

           }catch(e){}

           obj=eval("("+obj+")");

           //alert(obj);

           var str="";

           for(var i in obj)

           {

               str+='<tr>'+'<th>'+prizearray[obj[i].prizeno]+'</th>'

               str+='<td>'+'CD-KEYQ?/span>'+obj[i].cdkey+'</td>'

               str+='<td>'+'期限Q?/span>'+obj[i].expiratedate+'?/span>'+'</td></tr>';

           }

           jQuery("#prizelist").append(str);

        }

}

而必这样处理:卛_处理代码攑ֈsuccess函数里面Q?/span>

function getMyPrizeList(){

    if(isNotEmpty(uid)){

        var obj=new Array();

        try{

                  jQuery.ajax({type:"GET",url:"someurl",

                               cache:false,

                               dataType:"script",

                               scriptCharset:"gbk",

                               success:function(json){

                                 try{

                                      obj=result;  

                                }catch(e){}

                                jQuery("#prizelist").html("");

                                var str="";

                                for(var i=0;i<obj.length;i++ ){

                                    str+='<tr><th>'+prizearray[obj[i].prizeno]+'</th>';

                                    str+='<td>CD-KEYQ?/span>'+obj[i].cdkey+'</td>';

                                    str+='<td>期限Q?/span>'+obj[i].expiratedate+'?/span></td></tr>';

                                }

                                jQuery("#prizelist").append(str);                   

                               }

                   });

           }catch(e){}

        }

}

6. jQuery.getJSON实例Q?/span>

//内部函数Q实现债务l信息的载入、设|?/span>

    function innerShowDetail() {

       // 获得JSON格式的数?/span>

       $.getJSON('load.do',{id : userId}, function(json) {

           // Ҏkeyvalue

           for (key in json) {

              if(key == 'id'){

                  $('#detailDiv #' + key).val(json[key]);

              } else {

                  if(json[key] == ''){

                     // 没有D|ؓI?/span>

                     $('#detailDiv #' + key).html(' ');

                  } else if(key == 'sex'){

                     $('#detailDiv #' + key).html(json[key] == '0' ? '?/span>' : '?/span>');

                  } else if(key == 'group'){

                     if(json[key] != null) {

                         $('#detailDiv #' + key).html(json[key]['groupName']);

                     }

                  } else {

                     $('#detailDiv #' + key).html(json[key]);

                  }

              }

           }

           //讄对话框标题和内容

           $('#detailDiv').removeAttr('class');

           dialog.setTitle('查看人员[' + json['userName'] + ']详细资料');

           dialog.setContent($('#detailDiv').html());

       });

    }

 Q友情提C:本博文章Ƣ迎转蝲Q但h明出处:陈新汉,http://www.aygfsteel.com/hankchenQ?/span>


hankchen 2010-01-04 13:27 发表评论
]]>
动态导入JS文ghttp://www.aygfsteel.com/hankchen/archive/2009/10/20/299087.htmlhankchenhankchenTue, 20 Oct 2009 09:42:00 GMThttp://www.aygfsteel.com/hankchen/archive/2009/10/20/299087.htmlhttp://www.aygfsteel.com/hankchen/comments/299087.htmlhttp://www.aygfsteel.com/hankchen/archive/2009/10/20/299087.html#Feedback0http://www.aygfsteel.com/hankchen/comments/commentRss/299087.htmlhttp://www.aygfsteel.com/hankchen/services/trackbacks/299087.html背景说明Q这里要实现的功能是Q根据URL中的gameid参数Q加载不同的js文g。ؓ了实现这一功能Q用动态导入JS可以完美解决?br /> Q友情提C:本博文章Ƣ迎转蝲Q但h明出处:陈新汉,http://www.aygfsteel.com/hankchenQ?br />
/*
 *动态导入JS文g
**/
function jsImport(path) {
 var i;
 var ss = document.getElementsByTagName("script");
 for (i = 0; i < ss.length; i++) {
  if (ss[i].src && ss[i].src.indexOf(path) != -1) {
   return;
  }
 }
 var s = document.createElement("script");
 s.type = "text/javascript";
 s.src = path;
 var head = document.getElementsByTagName("head")[0];
 head.appendChild(s);
}


使用ҎQ?br /> jsImport("ranklist/"+getGameID()+"/winratiorank.js");
jsImport("ranklist/"+getGameID()+"/wintimesrank.js");

其中QgetGameID()的源码如下:
   function getGameID(){
        if(gameid && gameid!=null){
             return gameid;
        }
        urlparams=GetRequestParams();
        gameid=urlparams.gameid;
        //alert(gameid);
        return gameid;
   }

/* 功能Q获取url参数?后面的参数及其?br /> **/
function GetRequestParams() {
 var url = location.search;
 var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
 var params = new Object();
 for (i = 0; j = paraString[i]; i++) {
      params[j.substring(0, j.indexOf("=")).toLowerCase()] = decodeURI(j.substring(j.indexOf("=") + 1, j.length));
 }
 return params;
}





hankchen 2009-10-20 17:42 发表评论
]]>
JS操作JSONȝhttp://www.aygfsteel.com/hankchen/archive/2009/09/15/295217.htmlhankchenhankchenTue, 15 Sep 2009 13:58:00 GMThttp://www.aygfsteel.com/hankchen/archive/2009/09/15/295217.htmlhttp://www.aygfsteel.com/hankchen/comments/295217.htmlhttp://www.aygfsteel.com/hankchen/archive/2009/09/15/295217.html#Feedback2http://www.aygfsteel.com/hankchen/comments/commentRss/295217.htmlhttp://www.aygfsteel.com/hankchen/services/trackbacks/295217.html 

JSON(JavaScript Object Notation) 是一U轻量的数据交换格式,采用完全独立于语a的文本格式,是理想的数据交换格式。同ӞJSON?/span> JavaScript 原生格式Q这意味着?/span> JavaScript 中处?/span> JSON数据不需要Q何特D的 API 或工具包?br /> 本文主要是对JS操作JSON的方法做下ȝ?/span>

在JSON中,有两U结构:对象和数l?br />     1. 一个对象以“{”Q左括号Q开始,“}”Q右括号Q结束。每?#8220;名称”后跟一?#8220;:”Q冒PQ?#8220;‘名称/?#8217; ?#8221;之间使用“,”Q逗号Q分隔?nbsp;名称用引hhQ值如果是字符串则必须用括P数值型则不需要。例如:
    var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"}Q?nbsp;   
    2. 数组是|valueQ的有序集合。一个数l以“[”Q左中括P开始,“]”Q右中括Pl束。g间?#8220;,”Q逗号Q分隔?br />     例如Q?br />     var jsonranklist=[{"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":123456,"topscore":1500,"topplaytime":"2009-11-20"}];

Z方便地处理JSON数据Q?/span>JSON提供?/span>json.js包,下蝲地址Q?/span>http://www.json.org/json.js

在数据传输过E中Q?/span>json是以文本Q即字符串的形式传递的Q?/span>JS操作的是JSON对象Q所以,JSON对象?/span>JSON字符串之间的怺转换是关键。例如:
       JSON
字符?
       var str1 = '{ "name": "cxh", "sex": "man" }'; 
       JSON对象:
       var str2 = { "name": "cxh", "sex": "man" }; 


一?/span>JSON字符串{换ؓJSON对象

要用上面的str1Q必M用下面的Ҏ先{化ؓJSON对象Q?/span>

//?/span>JSON字符串{换ؓJSON对象

var obj = eval('(' + str + ')');

或?/span>

var obj = str.parseJSON(); //?/span>JSON字符串{换ؓJSON对象 

或?/span>

var obj = JSON.parse(str); //?/span>JSON字符串{换ؓJSON对象

然后Q就可以q样dQ?/span>

Alert(obj.name);

Alert(obj.sex);

 

特别注意Q?/span>如果obj本来是一?/span>JSON对象Q那么?/span>evalQ)函数转换后(哪怕是多次转换Q还?/span>JSON对象Q但是?/span>parseJSONQ)函数处理后会有问题(抛出语法异常Q?br />



二、可以?/span>toJSONString()或者全局ҎJSON.stringify()?/span>JSON对象转化?/span>JSON字符丌Ӏ?/span>

例如Q?/span>

var last=obj.toJSONString(); //?/span>JSON对象转化?/span>JSON字符

或?/span>

var last=JSON.stringify(obj); //?/span>JSON对象转化?/span>JSON字符

alert(last);


注意Q?br />     上面的几个方法中Q除?/span>eval()函数?/span>js自带的之外,其他的几个方法都来自json.js包?/span>新版本的 JSON 修改?/span> APIQ将 JSON.stringify() ?/span> JSON.parse() 两个Ҏ都注入到?/span> Javascript 的内建对象里面,前者变成了 Object.toJSONString()Q而后者变成了 String.parseJSON()。如果提C找不到toJSONString()?/span>parseJSON()ҎQ则说明您的json包版本太低?br />
友情提醒Q本博文章欢q{载,但请注明出处Q?a href="http://www.aygfsteel.com/hankchen">陈新?/a>



hankchen 2009-09-15 21:58 发表评论
]]>
中文ascii转ؓ中文昄问题http://www.aygfsteel.com/hankchen/archive/2009/09/01/293423.htmlhankchenhankchenTue, 01 Sep 2009 03:28:00 GMThttp://www.aygfsteel.com/hankchen/archive/2009/09/01/293423.htmlhttp://www.aygfsteel.com/hankchen/comments/293423.htmlhttp://www.aygfsteel.com/hankchen/archive/2009/09/01/293423.html#Feedback0http://www.aygfsteel.com/hankchen/comments/commentRss/293423.htmlhttp://www.aygfsteel.com/hankchen/services/trackbacks/293423.html 让h看不懂是什么意思,例如Q?br /> \u9a8c\u8bc1\u7801\u9519\u8bef\uff01

其实采用下面的方法可以很单的解决Q?br />  <script>
  var e='\u9a8c\u8bc1\u7801\u9519\u8bef\uff01';
  alert(unescape(e));
</script>
提示昄Q?#8220;验证码错?#8221;

友情提醒Q本博文章欢q{载,但请注明出处Q?a href='http://www.aygfsteel.com/hankchen'>陈新?/a>

hankchen 2009-09-01 11:28 发表评论
]]>
վ֩ģ壺 â| | ̨| ϲ| | п| | ʡ| | ǰ| | | ɽ| | ʦ| ˹| | γ| | ƽ| ͤ| | | ۶| Ƽ| | Ԫ| ͨμ| Ӷ| °Ͷ| | Դ| | | | ԭ| | | | | |