Quảng Cáo/ Thông Báo của lớp báo k32

Tổng số Khách

Thứ Sáu, 29 tháng 6, 2012

Thủ thuật lập trình jQuery - phần 1


Những thủ thuật trong lập trình jquery mà giúp ích cho chúng ta rất nhiều để giải quyết một số vấn đề thường gặp của các bạn
1. Sử dụng jQuery từ Google
Google có một phiên bản mới của jQuery được làm sẵn có cho các nhà phát triển. Thay vì sử dụng bản sao jQuery riêng, bạn nên tận dụng dự “hào phóng” từ Google để sử dụng jQuery 

CODE


<script src="http://ajax.Googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>


2. Kiểm tra ngày sinh sử dụng jQuery
Kiểm tra ngày sinh là một chức năng thường có ở các trang web có nội yêu cầu độ tuổi phải trên 18. Với jQuery điều này thực hiện như sau: 

CODE

$("#lda-form").submit(function(){
    var day = $("#day").val();
    var month = $("#month").val();
    var year = $("#year").val();
    var age = 18;
    var mydate = new Date();
    mydate.setFullYear(year, month-1, day);

    var currdate = new Date();
    currdate.setFullYear(currdate.getFullYear() - age);
    if ((currdate - mydate) < 0){
        alert("Sorry, only persons over the age of " + age + " may enter this site");
        return false;
    }
    return true;
});


3. Kiểm tra hình ảnh nạp đúng cách
Làm thế nào để bạn biết nếu một hình ảnh đã được tải? Trong một số trường hợp đặc biệt như hình ảnh xác thực, người sử dụng có thể gặp vấn đề nếu hình ảnh không được nạp đúng cách. Sử dụng code dưới đây, bạn sẽ có thể biết nếu hình ảnh của được hiển thị.

CODE

$('#myImage').attr('src', 'image.jpg').load(function() {
    alert('Image Loaded');
});


4. Kiểm tra thuộc tính target=”blank” trong XHTML 1.0 Strict
Thuộc tính target=”blank”dùng trong việc muốn mở link ở 1 tab hoặc cửa số khác. Trong xHTML 1.0 Strict thì target=”blank” không được hỗ trợ. Dử dụng jQuery sẽ khắc phục được điều này.

CODE

$("a[@rel~='external']").click( function() {
    window.open( $(this).attr('href') );
    return false;
});


5. Tìm kiếm trong văn bản bằng cách sử dụng jQuery
Chức năng sau đây sẽ cho phép tìm kiếm văn bản đầy đủ trên trang bằng cách sử dụng jQuery. Tính năng này là không chỉ đẹp mắt mà còn hữu ích.

CODE

$.fn.egrep = function(pat) {

var out = [];
var textNodes = function(n) {
  if (n.nodeType == Node.TEXT_NODE) {
   var t = typeof pat == 'string' ?
    n.nodeValue.indexOf(pat) != -1 :
    pat.test(n.nodeValue);
   if (t) {
    out.push(n.parentNode);
   }
  }
  else {
   $.each(n.childNodes, function(a, b) {
    textNodes(b);
   });
  }
};
this.each(function() {
  textNodes(this);
});
return out;
};


6. outerHTML
Thuộc tính innerHTML rất hữu ích: Nó cho phép lấy nội dung của 1 phần tử HTML. Nhưng nếu bạn cần cả nội dung lẫn tag HTML? bạn cần “outerHTML”

CODE

jQuery.fn.outerHTML = function() {
    return $('
<div>').append( this.eq(0).clone() ).html();
};</div>


7. Mở popup
Mặc dù phổ biến của popup giảm cùng với sự gia tăng của các chức năng chặn popup, cửa sổ pop-up vẫn có thể có ích trong một số trường hợp cụ thể. Đây là code để mở các liên kết trong cửa sổ pop-up. Chỉ cần thêm class css “popup” vào liên kết của bạn để nó làm việc.

CODE

jQuery('a.popup').live('click', function(){
    newwindow=window.open($(this).attr('href'),'','height=200,width=150');
    if (window.focus) {newwindow.focus()}
    return false;
});


8. Nhận dạng trình duyệt
Như tiêu đề, việc phát triển website thích hợp với tất cả trình duyệt là một thử thách cho các nhà phát triển, đoạn code giúp ích cho việc đó.

CODE

//A. Target Safari
if( $.browser.safari ) $("#menu li a").css("padding", "1em 1.2em" );

//B. Target anything above IE6
if ($.browser.msie && $.browser.version > 6 ) $("#menu li a").css("padding", "1em 1.8em" );

//C. Target IE6 and below
if ($.browser.msie && $.browser.version <= 6 ) $("#menu li a").css("padding", "1em 1.8em" );

//D. Target Firefox 2 and above
if ($.browser.mozilla && $.browser.version >= "1.8" ) $("#menu li a").css("padding", "1em 1.8em" );


9. Lấy vị trí tương đối của con trỏ chuột
Bạn có bao giờ muốn lấy được vị trí chuột tương đối? Chức năng này rất tiện dụng sẽ trả lại vị trí chuột (x và y) theo phần tử cha của nó

CODE

function rPosition(elementID, mouseX, mouseY) {
  var offset = $('#'+elementID).offset();
  var x = mouseX - offset.left;
  var y = mouseY - offset.top;

  return {'x': x, 'y': y};
}


10. Phân tích một file XML bằng cách sử dụng jQuery
XML là loại tập tin rất quan trọng trên Internet , và nhiều nhà phát triển phân tích chúng time by time.Toàn bộ quá trình phân tích thể hiện qua đoạn code sau:

CODE

function parseXML(XML) {
  //find every Tutorial and print the author
  $(XML).find("Tutorial").each(function()
  {
    $("#output").append($(this).attr("author") + "");
  });

Thứ Ba, 26 tháng 6, 2012

Hiệu ứng phóng to ảnh khi dê chuột vào với Hover Image Gallery

Hôm nay Viettin365 sẽ giới thiệu cho các bạn một hiệu ứng phóng ảnh hoàn toàn mới. Khi bạn dê chuột vào ảnh. Nếu các bạn còn nhớ thì mình đã từng giới thiệu cho các bạn Hiệu ứng thay đổi ảnh khi dê chuột vào Hiệu ứng này còn một nhược điểm là hoạt động không tốt trên IE.


☼ Cách tiến hành:

1- Đăng nhập (login) vào Blog
2- Vào Mẫu (Template)
3- Chọn Chỉnh sửa HTML (Edit HTML) => Tiếp tục (Procced):
4- Thêm đoạn Code sau trước thẻ:</head>
<style type="text/css">
.hovergallery img{
-webkit-transform:scale(0.8); /*Webkit: Scale down image to 0.8x original size*/
-moz-transform:scale(0.8); /*Mozilla scale version*/
-o-transform:scale(0.8); /*Opera scale version*/
-webkit-transition-duration: 0.5s; /*Webkit: Animation duration*/
-moz-transition-duration: 0.5s; /*Mozilla duration version*/
-o-transition-duration: 0.5s; /*Opera duration version*/
opacity: 0.7; /*initial opacity of images*/
margin: 0 10px 5px 0; /*margin between images*/
}
.hovergallery img:hover{
-webkit-transform:scale(1.1); /*Webkit: Scale up image to 1.2x original size*/
-moz-transform:scale(1.1); /*Mozilla scale version*/
-o-transform:scale(1.1); /*Opera scale version*/
box-shadow:0px 0px 30px gray; /*CSS3 shadow: 30px blurred shadow all around image*/
-webkit-box-shadow:0px 0px 30px gray; /*Safari shadow version*/
-moz-box-shadow:0px 0px 30px gray; /*Mozilla shadow version*/
opacity: 1;
}
</style>
Tùy chỉnh:
  • opacity: 0.7; độ mờ của anh khi chưa dê chuột lên.
  • opacity: 1; Độ mờ của anh khi dê chuột vào (Ảnh mờ nhất là 0 và nét nhát là 1)
  • box-shadow:0px 0px 30px gray; Hiệu ứng đổ bóng của anh khi dê chuột vào.
  • Các tiền tố -webkit, -moz, -o để hiệu ứng chạy tốt trên nhiều lọa trình duyệt khác nhau là Opera, Safari, Moliza.

  • Nếu muốn tăng/giảm kích cỡ hình ảnh thu nhỏ bạn thay đổi thông số 0.8

Code khi chèn ảnh:

Khi đăng bài viết bạn check vào HTML và dán code bên dưới vào.
<div class="hovergallery">
<img src="Link ảnh 1" />
<img src="Linh ảnh 2" />
<img src="Link ảnh 3" />
</div>
Chúc thành công!

Thứ Sáu, 22 tháng 6, 2012

Tìm hiểu margin và padding trong blogspot

Để có một blog đẹp chúng ta phải chỉnh sửa mã nguồn cho các thành phần trở nên cân đối và hài hòa. Bài viết này sẽ hướng dẫn các bạn làm quen với margin và padding, canh lề và canh đệm. Những ai đã từng học qua CSS thì không lạ gì với hai tag này.
MARGIN

Margin được dùng để kiểm soát khoảng trống giữa các thành phần của trang, hay còn được gọi là lề. Hãy để ý các khoảng trống mà trình duyệt của bạn hiển thị khi bạn xem bất kỳ trang web hay blog. Nào, đăng nhập blogger.com bằng tài khoản Google của bạn, vào Template (Mẫu) ->Edit HTML (Chỉnh sửa HTML), kéo thanh trược xuống và bạn có thể nhìn thấy rất nhiều thành phần có margin với các giá trị khác nhau. Phụ thuộc vào số giá trị đứng phía sau mà khoảng trống khác nhau. Bạn có thể bắt gặp 4, 3, 2, thậm chí 1 giá trị đứng phía sau.



Bốn giá trị:


margin 10px 5px 0 5px;
Lề trên, phải, dưới, trái được canh lần lượt theo các khoảng cách 10px, 5px, 0px, 5px

Ba giá trị:


margin: 30px 20px 70px;
Lề trên, phải, dưới, trái được canh lần lượt theo các khoảng cách 30px, 20px, 70px, 20px

Hai giá trị:


margin: 30px 20px;
Lề trên và dưới: 30px
Lề trái và phải: 20px

Một giá trị:


margin: 100px;
Tất cả các lề đều được canh một khoảng cách 100px

Nếu bạn không nhớ các vị trí này, hãy sử dụng theo cú pháp sau cho từng vị trí một.
margin-top: 1px;
margin-right: 2px;
margin-bottom: 3px;
margin-left: 4px;
(Các con số ở đây là ví dụ)

PADDING


Padding dùng để kiểm soát khoảng trống giữa nội dung và đường viền của nó . Trong tiếng Anh, từ này có nghĩa là vật hay sự đệm, lót.


Tương tự như margin, padding cũng có thể có 4 giá trị đi phía sau, tương ứng trên, phải, dưới, trái (như chiều kim đồng hồ).


Ví dụ:
padding: 15px 30px 25px 0;
Trên 15px, phải 30px, dưới 25px, trái 0px

Ngoài ra người ta có thể dùng:
padding-top: 15px;
padding-right: 30px;
padding-bottom: 0;
padding-left: 30px;
(Các con số ở đây là ví dụ)

Thứ Bảy, 16 tháng 6, 2012

Nofollow và Follow, những điều cần biết

Nofollow và Follow, những điều cần biết
Trong khi SEO và nhất là Off-page SEO, chúng ta vẫn thường được cảnh báo với nofollow, external nofollow hay đại loại, vậy, nofollow là gì và webmaster cần chú ý gì đến nofollow trong khi xây dựng liên kết.
Google nói về rel=”nofollow”


Nofollow, External Nofollow, Thẻ Nofollow

Nofollow hay External nofollow (không theo) là một trong các thuộc tính trong thẻ a href (xác định bằng rel=”..”). Theo google, bằng việc đặt rel nofollow trong đường dẫn, webmaster nói cho các spider biết rằng đây là một liên kết không đáng tin cậy và xin đừng đặt độ tin cậy lên nó và dĩ nhiên, sẽ không có pagerank (hay tính backlink) cho các đường dẫn với rel nofollow. Về cơ bản thì nofollow và external nofollow cũng giống nhau nhưng External nofollow để nhắc google phân biệt giữa các link cùng trang với các link không thuộc trang đó.
<a href='URL trang web' rel='nofollow'>Tiêu đề link</a>


Follow và dofollow



Follow và Dofollow là các tùy chỉnh ngược lại với nofollow, nó đồng nghĩa với việc cho phép spider đặt độ tin cậy và cho điểm liên kết

Cách phân biệt các site nofollow với liên kết

Các webmaster có thể chuột phải vào trang cần xem, chọn view source để xem có thẻ nofollow trong link hay trong meta tag hay không:
<meta name=”robots” content=”nofollow” /> (Meta tag nofollow)
<a href=”SEO..” rel=”nofollow”> (Nofollow ở đường dẫn)
Hoặc sử dụng công cụ kiểm tra follow, dofollow Tại đây


Là Webmaster, tôi nên để nofollow hay dofollow

Nếu là liên kết link, hãy công bằng và để follow (hay dofollow), đối với các comment và bài viết mà không qua kiểm soát của bạn, cách tốt nhất là nofollow all vì bạn khổng thể kiểm soát hết được các liên kết do người dùng tạo, có thể là những website cạnh tranh và nếu để dofollow all thì website của bạn rất có thể thành bãi chiến trường cho những SEOer cày backlink !

Thêm nữa, nên nofollow với các link trang đăng kí, đăng nhập hay các trang mà bạn cảm thấy không có giá trị tìm kiếm!


Lời khuyên đối với các SEO

Trước khi khai thác liên kết tại những trang mà bạn cho là tiềm năng, nên cẩn thận với nofollow, đừng để công dã tràng và cũng đừng tưởng bở với những nguồn cày backlink ngon hơn cả cút nướng !

Thứ Hai, 11 tháng 6, 2012

Ẩn liên kết trong commnet blogger với JQuery

Trước đây, Viettin365 đã phải xóa rất nhiều ý kiến spam trong phần commnet của blogger. Bộ lọc sẵn có của Blogger đã chặn hơn 1000 comment spam link nhưng vẫn còn một số bị lọc hụt. Vì lý do này, namkna đóng tùy chọn nặc danh (Anonymous) ở phần bình luận. Nhưng điều này không giải quyết vấn đề và những người có hồ sơ Blogger cũng bắt đầu spam. Vì vậy, namkna đã đến với một hack đơn giản hỗ trợ jQuery mà giấu đi bất cứ liên kết nào có thể click và chỉ hiển thị văn bản của nó.

☼ Cách tiến hành:


1- Đăng nhập (login) vào Blog
2- Vào Mẫu (Template)
3- Chọn Chỉnh sử HTML (Edit HTML)
4- Thêm đoạn code bên dưới vào trước thẻ  </body> 
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js'/>
<script>

$('.comment-content a[rel$=nofollow]').replaceWith(function(){return ($(this).text());});

</script>
Lưu ý: Nếu blog của bạn đã có thư viện Jquery rồi thì xóa phần màu xanh đi.
- Nếu bạn muốn gỡ bỏ hoàn toàn các liên kết từ các ý kiến​​, hãy dùng mã này để thay thế
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js'/>
<script>

$('.comment-content a[rel$=nofollow]').hide());

</script>
- Với mẫu thread comment của blogger các bạn dùng mã sau:
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js'/>
<script>

$('.comment-body p a[rel$=nofollow]').replaceWith(function(){return ($(this).text());});

</script>
5- Lưu mẫu lại và xem kết quả!
Hy vọng điều này sẽ giúp bạn trong việc hạn chế các thư rác trong phần bình luận của bạn vàkhông bị làm phiền bởi các comment spamlink nữa.

Thứ Tư, 6 tháng 6, 2012

Auto readmorre với thumbnail cho blogspot sử dụng javarscipt - Style 2


Auto readmorre với thumbnail cho blogspot sử dụng javarscipt - Style 2
Hôm nay Viettin365giới thiệu các bạn thủ thuật auto readmore (Tự động tóm tắt bài viết cho Blogspot) với cách hiển thị hoàn toàn khác so vớiThủ thuật lần này sẽ giúp các bạn có thể tùy chỉnh vị trí ảnh thumbnail, tiêu đề bài viết, ngày tháng đăng bài, tên tác giả và phần mô tả theo ý bạn. Ảnh thumb sẽ được float về bên trái và tiêu đề, nội dung hay thông tin bài viết được đưa về phía bên phải trông chuyên nghiệp hơn và dễ dàng tùy chỉnh theo ý mình.


Ảnh minh họa:




» Bắt đầu thủ thuật

1. Đăng nhập vào tài khoản Blogger
2. Vào phần Mẫu (Template)
3. Chọn chỉnh sửa HTML (Edit HTML) - tiếp tục
4. Chọn mở rộng mẫu tiện ích (Expand Widget Templates) => Xem video:

5. Chèn tiếp code CSS bên dưới vào trước thẻ ]]></b:skin>
.sumpost{text-shadow:0 1px #fff;color:#111;font-family:arial;font-size:12px;line-height:1.4;margin:0;padding:6px 8px}
.img-post img{background:#fff;float:left;margin:6px 8px 0 8px;border:1px solid #ccc;height:100px;width:120px;padding:2px}
.sumpost h2{font-size:16px;background:none;padding:0;margin:0;line-height:1.2}
.sumpost h2 a{color:#160}
.sumpost .postinfo{color:#0e3f4f;padding:3px 0 3px 8px;margin:0;border-bottom:dotted #ddd 1px}
.sumpost .postinfo .numcm{margin:0 2px 0 2px}
.sumpost .postinfo .author{margin:0 2px 0 0}
.sumpost .postinfo .numcm .num{color:#f80}
.sumpost .postinfo .label{margin:0 2px 0 2px}
.sumpost .postinfo .label a{color:#b0039a}
.readmore{float:right;margin:8px 0 0;padding:0 0 0 0}
.readmore a{color:#d7034e;padding:0}
.readmore a:hover{color:#00f}
.borderline{border-top:1px solid #bbb;border-bottom:1px solid #fff;margin:4px 0 0 0}
Trong đó:
  • font-size:16px: Là tiêu đề của bài viết trong auto readmore
  • color:#d7034e là màu chữ đọc thêm (đọc tiếp, readmore)
6. Chèn tiếp code bên dưới vào trước thẻ </head>
<script type='text/javascript'>
var thumbnail_mode = "no-float" ;
no_image = "https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPN_bFhlu7fl5-jnm60JPyzKUW-qWjE8bv0R7Dlqw8TkmvEN0r5DbbvaHRma5rKgPB4U_k-m7wdDHBQgDm7F1Z6wrKmjblkp6j_bPjpi1yOv89y7drmPglOA8ooqMtuvj_yJp3hKqMTA9p/s1600/no-image-quangvietmkt-blogspot-com.PNG";
sumposts = 500;
</script>
<script type='text/javascript'>
//<![CDATA[
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('A C(5,8){k(5.t("<")!=-1){4 s=5.D("<");E(4 i=0;i<s.e;i++){k(s[i].t(">")!=-1){s[i]=s[i].B(s[i].t(">")+1,s[i].e)}}5=s.L("")}8=(8<5.e-1)?8:5.e-2;K(5.G(8-1)!=\' \'&&5.t(\' \',8)!=-1)8++;5=5.B(0,8-1);H 5+\'...\'}A J(w,j,d,g,n,h,o,r,m,q){4 3=M.F(w);4 l="";4 j=j;4 d=d;4 g=g;4 n=n;4 h=h;4 o=o;4 r=r;4 m=m;4 q=q;4 7=3.I("7");k(7.e==0){l=\'<3 6="7-z"><a f="\'+d+\'"><7 u="\'+O+\'"/></a></3>\'}k(7.e>=1){l=\'<3 6="7-z"><a f="\'+d+\'"><7 u="\'+7[0].u+\'"/></a></3>\'}4 x=l+\'<3 6="N"><v><a f="\'+d+\'">\'+j+\'</a></v><3 6="W"><9 6="g">\'+n+\'<b> \'+g+\'</b></9> | <9 6="V"><9 6="T">\'+h+\' </9>\'+o+\'</9> | <9 6="P">\'+m+\'<a f="\'+q+\'"> \'+r+\'</a></9></3> \'+C(3.y,U)+\'...<3 6="Q"><a f="\'+d+\'">Đọc Rếp...</a></3></3><3 6="S"></3>\';3.y=x}',59,59,'|||div|var|strx|class|img|chop|span||||urltitle|length|href|author|numcms||title|if|imgtag|Labelslabel|authorLabel|numLabel||urllabel|labelpost||indexOf|src|h2|pID|summary|innerHTML|post|function|substring|removeHtmlTag|split|for|getElementById|charAt|return|getElementsByTagName|createSummaryAndThumb|while|join|document|sumpost|no_image|label|readmore|ti|borderline|num|sumposts|numcm|postinfo'.split('|'),0,{}))
//]]>
</script>
<style><b:if cond='data:blog.pageType == "index"'>.post-footer,.post h3,h2.date-header{display:none;}</b:if></style>
Trong đó:
        + Thay 500 là số ký tự hiển thị.
        + Link ảnh màu xanh là ảnh sẽ xuất hiện khi bài viết của bạn không có ảnh đại diện. Bạn có thể thay thế bằng link ảnh khác. Nếu vẫn dùng ảnh đó thì hãy tải về Tại đây (hoặc Tại đây) sau đó Upload lên blog và thay link vào để tránh ảnh bị die khi mình xóa.
7. Tiếp theo bạn hãy tìm đến dòng code bên dưới
<data:post.body/>
8. Thay thế code vừa tìm được thành đoạn code bên dưới:
<b:if cond='data:blog.pageType == &quot;static_page&quot;'>
<data:post.body/>
<b:else/>
<b:if cond='data:blog.pageType == &quot;item&quot;'>
<data:post.body/>
<b:else/>
<div expr:id='&quot;summary&quot; + data:post.id'>
<p><data:post.body/></p>
</div>
<b:loop values='data:post.labels' var='label'>
<script type='text/javascript'>
createSummaryAndThumb(&quot;summary<data:post.id/>&quot;,&quot;<data:post.title/>&quot;,&quot;<data:post.url/>&quot;,&quot;<data:post.author/>&quot;,&quot;<data:top.authorLabel/>&quot;,&quot;<data:post.numComments/>&quot;,&quot;<data:top.commentLabelPlural/>&quot;,&quot;<data:label.name/>&quot;,&quot;<data:postLabelsLabel/>&quot;,&quot;<data:label.url/>&quot;);
</script>
</b:loop>
</b:if>
</b:if>
9. Cuối cùng là save lại và kiểm tra thành quả nha.

Widget#2

Widget#5

Widget#4

primaryBottomSidebar

Footerpages

Trang

Bottom Navi

Được tạo bởi Blogger.

Người theo dõi

TIÊU ĐIỂM