Giới thiệu

Mình tên Triết, 25 tuổi đến từ Tây Ninh. Đã biết internet 6 năm nay rồi mà mới "chơi" blog lần dầu tiên. Khả năng của mình : - Thành thạo HTML - CSS (HTML5 - CSS3).- Một chút Javascript và jQuery.- Một chút PHP + CI Framework.- Một chút vốn tiếng Anh ^^ .. Mục đích mình lập blog này để Việt hóa những từ khóa mình hay dùng để tìm kiếm trên Google - Bing.. Chia sẽ để a/e tìm kiếm trên Internet với ngôn ngữ Mẹ chuẩn xác và nhanh chóng hơn ...

author
Hiển thị các bài đăng có nhãn jquery. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn jquery. Hiển thị tất cả bài đăng

[jQuery] Web app mô phỏng trình nhắn tin của ios 7

Leave a Comment

Mình đang luyện lại html+css tình cờ thấy app sms của ios7 cũng khá đơn giản :D mình bỏ gần 3,5 giờ đồng hồ để style + code + search plugin iscroll 5 áp dụng vào ...
Các bạn có thể kéo thả như trên smartphone .. 
Nhập nội dung đoạn sms vào ô bên dưới rùi nhấn Enter :D
Chúc vui :D

Link demo : http://js.caosugiong.com/ios7-sms/

Chi tiết

[jquery Game] Light Off lấy cảm hứng từ chương trình 60s chiều nay :D

Leave a Comment
Giới thiệu :
Tình cờ chiều nay xem thời sự 60s thấy có nói đến cho người già chơi những game đơn giản có lợi cho não bộ, vì khi chơi game não sẽ hoạt động nhiều hơn... Thấy bà cụ trên TV chơi game này... thế là làm thử luôn..

Gameplay đơn giản như đan rổ... thấy đèn nào sáng thì nhấn cho nó tắt...Click đúng bạn được cộng thêm thời gian..

Nếu có ông bà thì mở cho ông bà chơi thử nhé :D

Viết = jQuery + animate.css cho hiệu ứng...
Touch/tap = jQuery mobile

Xem source trực tiếp trên file index.html

Link game : Light Off - jQuery game

Mình chưa thử ... nhưng chắc là chơi tốt trên smartphone / tablet

Chúc vui :D
Chi tiết

[jquery] Cách xác nhận mật khẩu bằng Jquery

Leave a Comment
Với đoạn jquery code sau đây các bạn sẽ validate được việc gõ mật khẩu của User có đúng hay không chỉ với vài dòng jQuery đơn giản :


//#pass là input chứa Password #repass là input nhập lại password
$("#repass").change(function(){
  var p = $("#pass").val();
  if($(this).val() != p){
    alert("Nhập lại mật khẩu không chính xác ! Vui lòng kiểm tra lại .");
    $("#repass").val("").parent().addClass("has-error");
  } else{
    $("#repass").parent().removeClass("has-error");
  }
})

Class .has-error là style border màu đỏ báo hiệu cho người dùng biết có lỗi trên form. Ở đây mình dùng với Bootstrap 3.0

Cấu trúc HTML cho Form của Bootstrap :
<!-- Password input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="pass">Mật khẩu</label>
  <div class="col-md-5">
    <input id="pass" name="pass" placeholder="" class="form-control input-md" required="" type="password">
   
  </div>
</div>

<!-- Password input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="repass">Nhập lại mật khẩu</label>
  <div class="col-md-5">
    <input id="repass" name="repass" placeholder="" class="form-control input-md" required="" type="password">
   
  </div>
</div>


Chúc vui  :D
Chi tiết

[jQuery Game] Follow the lead - 2/8/2014

Leave a Comment
Mục tiêu rèn luyện trí nhớ, tăng khả năng phản xạ, quyết định nhanh.
Gameplay : click vào button Bắt đầu ...


- Click/tap vào ô vuông theo đúng thứ tự mà máy hiện ra trên màn hình...
- Bạn có 10 giây để click/tap..
- Game có 6 mức độ khó <=> với 6 ô hiển thị cùng lúc...

* Chúc các bạn một ngày chủ nhật vui và hại não :3

Thư viện sử dụng : 
jQuery, jQuery mobile, animate.css
Source script nằm trong index.html

Link game : Follow The Lead
Chi tiết

[jQuery] Giới thiệu Animate.css - Animation CSS3 đơn giản, dễ xài và đẹp

Leave a Comment
I - Giới thiệu:
Tác giả : Daniel T. Eden
Đang làm việc cho DropBox ở mảng thiết kế... các bạn có thể đọc thêm về anh ấy tại website :
http://daneden.me/ 

- Animate.css đúng như tên gọi cũng chỉ là file css bình thường chứa sẵn animation bên trong .
Theo tác giả :
animate.css is a bunch of cool, fun, and cross-browser animations for you to use in your projects. Great for emphasis, home pages, sliders, and general just-add-water-awesomeness.
Hiệu ứng chuyển động mượt mà, nhiều hiệu ứng để chọn lựa, hỗ trợ Cross-browser tốt..
Mình đã test trên  chrome, safari, firefox...iPad, iPhone, Android đều hiển thị chuyển động rất bắt mắt..


II - Cách sử dụng :

Thật ra thì sử dụng cũng rất đơn giản..
Trong project của mình là game [What was the last fruit ?] mình dùng để tạo hiệu ứng cho ảnh... và theo như docs trên github thì mình chỉ dùng jQuery và addClass vào thì animate sẽ được kích hoạt ngay lập tức...

Đầu tiên là bạn tải về file animate.css trước... Đặt link trong thẻ <head> 
Tải tại đây : animate.css
<head>
  <link rel="stylesheet" href="animate.min.css">
</head>
Với jQuery tác giả có ví dụ như thế này :

$('#yourElement').addClass('animated bounceOutLeft');
animated là bắt buộc tiếp theo là tên của hiệu ứng các bạn có thể tham khảo bên dưới...

...addClass('animated')

Danh sách hiệu ứng trong animate.css khá nhiều mình không liệt kê ra hết bên dưới  :
  • Bounce - hiệu ứng nảy, tưng tưng tưng :3
  • Flash - chớp
  • Pulse - @@
  • Rubberband - Kéo dãn như dây cao su
  • Shake - rung, lắc
  • Swing - đung đưa
  • ..... còn nhiều nữa

Các bạn có thể xem và lấy tên của hiệu ứng tại trang http://daneden.github.io/animate.css/
Ngoài ra animate.css còn hỗ trợ hiệu ứng [Entrances] tạm dịch là vào và [Exits] ra...
Ví dụ : bounceOutRight - nảy ra ngoài bên trái.. khi hết animated thì nó "mất" tiêu luôn  ngược lại thì
bounceInRight từ bên phải nảy vào trong :D

Để dễ hình dung hơn về cách sử dùng mình có tạo 1 Pen trên Codepen.io và các bạn có thể thử thoải mái tại đây : http://codepen.io/bmtriet/pen/LluEv
** Lưu ý: ký tự đầu không viết hoa nhé

--The End -- See ya !!!
Chi tiết

[TUT] Hướng dẫn làm jQuery game [What was the last fruit ?] 31-7

Leave a Comment
Giao diện chính khi chơi game.
Xin chào các bạn  ! đây là lần đầu tiên mình viết TUT hướng dẫn như thế này.. văn mình dỡ + câu cú lộn xộn.. mong mọi người thông cảm trước..

Link game : http://js.caosugiong.com/last-fruit/

1 - Giới thiệu về game :
Gameplay khá đơn giản.. chỉ cần nhìn và nhớ loại trái cây hiện ra trước đó... chọn vào đúng loại ở bên dưới, đồng thời nhớ luôn loại trái cây đang hiển thị... cứ như vậy nhớ + click.. thử xem bạn chơi được tối đa bao nhiêu điểm ????


Game hỗ trợ Localstorage[html5] nên highscore của bạn sẽ lưu luôn ở đó...

Sử dụng animation từ  [animated.css] ở link sau đây ..rất mượt và thú vị.. http://daneden.github.io/animate.css/

Tất nhiên jQuery + jQuery mobile [cảm ứng]

2 - Bắt đầu nào...

Đầu tiên là sườn HTML cho game của chúng ta.. phần này yêu cầu bạn phải nắm trước kiến thức HTML và 1 chút CSS để thiết kế giao diện game này..

<div class="wrap">
<h3 class="start"></h3>
<div class="fruit-show">
</div>
<div class="point-board">
<b>
 <span class="point">0</span> pts  - Highscore : <span class="high">0</span> pts
</b>
</div>
<div class="time"><img src="" alt=""></div>
<div class="clear"></div>
<div class="fruit-choice">

Tiếp theo mình sẽ giải thích từng chức năng của code bên dưới

Đầu tiên :
var hs = localStorage.getItem("highScore");
$(document).ready(function(){
    $(".high").html(hs);
})
var end; // biến gọi gameover dùng setTimeout
var score = 0; // điểm
var step = 0; // đếm bước nhảy để kiểm tra xem đúng/sai
var n;
var last; // biến chứa giá trị của mảng qF
var aF = ['chanh','dao','dau','dua','nho','tao','xoai']; // 2 mảng aF và qF chứa tên quả, tên ảnh nằm trong thư mục /img/
var qF = ['chanh','dao','dau','dua','nho','tao','xoai'];
var ans = []; // khi user chọn thì đáp án sẽ push vào đây.. để mình kiểm tra..
Dùng var để khai báo các biến...

 - Khi người dùng click/tap vào .start thì sẽ chạy function start();
Function Start();
$(".start").tap(function(){
    $(this).addClass("animated zoomOutUp");
    start();
})
function start(){
    n = (Math.floor(Math.random()*6)+1);
    ans.push(qF[n]);
    $(".fruit-show").html("<img class='q' src='img/"+qF[n]+".png'>");
    $(".q").addClass("animated flipInY");
    setTimeout(core,3000);
}
* Khi click vào class start thì class start sẽ addClass [Thêm class] vào chính nó với class name là : "animated zoomOutUp". function này có tác dụng thêm animated vào class start làm nó sinh động hơn.. :D

** function start();
-Ta đếm bên trong mảng qF có 6 giá trị.. muốn lấy 1 giá trị ngẫu nhiên thì ta dùng
n = (Math.floor(Math.random()*6)+1);
để lấy 1 số ngẫu nhiên từ 0 - 6.. rồi dùng val này để xác định vị trí (index) của mảng qF..
vd : nếu n = 2 => qF[2] console.log(qF[2]) == dau ... đếm từ 0  và 2 là vị trí của Dâu...
-Sau khi có được n ta xét tiếp đến dòng : ans.push(qF[n]);
Bạn đã biết ans[] là mãng chứa đáp án... khi đó ans sẽ được gán giá trị là qF[n] vào như vd bên trên thì ans[] sẽ chứa "dau"...

 - Tiếp theo : $(".fruit-show").html("<img class='q' src='img/"+qF[n]+".png'>");
Ta thêm nội dung vào .fruit-show bằng tag html("nội dung muốn nhét vào :D");...
Mình thêm tag HTML img .. với class là [q] src='img/"+qF[n]+".png'>
Theo vd thì qF[2] => src = "img/dau.png" sẽ load ảnh đó lên.. và đổ vào .fruit-show...

-$(".q").addClass("animated flipInY"); Thêm animated ...

- Cuối cùng : setTimeout(core,3000);
Dùng setTimeout để gọi function core(); sau 3000ms ~ 3 giây...để người chơi nhớ loại trái cây đầu tiên...
và gọi core() cho core() load trái cây tiếp theo...

Function Core();
function core(){
   
    $(".q").addClass("animated flipOutY");
    n = (Math.floor(Math.random()*6)+1);
    ans.push(qF[n]);
    $(".fruit-show").html("<img class='q' src='img/"+qF[n]+".png'>");
    $(".q").addClass("animated flipInY");
    ask();
    step++;

}
Nếu bạn để ý sẽ thấy core() không khác gì start() là mấy... vì core() chỉ lặp đi lặp lại như start()... chỉ khác ở vài điểm :
- Gọi thêm ask(); // hiện list trái cây bên dưới cho người dùng chọn..
- Biến step ++... // Bên trên mình khai báo step = 0 .. khi step++ <=> với step = step + 1; xác định vị trị của mảng hiện tại để kiểm tra xem user có chọn đúng loại trái cây trước đó hay không ....

Function Ask();

function ask(){

    $(".fruit-choice").html('');
    shuffle(aF);
    for(var i = 0; i < 7; i++){
        $(".fruit-choice").append("<img class='a' data-value='"+aF[i]+"' src='img/"+aF[i]+".png'>");
    }

    $(".time img").attr("src",'count.gif');
    end = setTimeout(function(){
        $(".time img").attr("src",'null');
        over();
    },3000);
}

* Vài điêm mới ở function này :
- shuffle(aF) // Mình có tìm được function đảo mãng ngẫu nhiên và mình sẽ đề cập nó ở bên dưới... tác dụng chính của câu lệnh này là đảo nội dung bên trong mãng aF thành ra ngẫu nhiên.. không còn theo vị trí ban đầu nữa... vd ta có mãng : 1,2,3,4... sau khi shuffle thì mãng sẽ là : 2,3,1,4 ... và cứ như thế mỗi khi gọi Ask() thì mãng aF lại bị đảo lộn... kết quả là list trái cây người dùng click vào sẽ bị đảo lộn vị trí...

- Dùng vòng lặp for để đổ data vào .fruit-choice

- Mình dùng append() để đẩy nội dung xuống phía dưới... vd ta có:
.a
.b
.c
Ta dùng append(".d")..thì ta sẽ được
.a
.b
.c
.d  <-- nằm cuối..
Phần này chỉ là phụ.. để tạo thêm time cho game.. mình để setTimeout 3giây .. sau 3 giây thì gameover... nếu click sai cũng over() ...
$(".time img").attr("src",'count.gif');
    end = setTimeout(function(){
        $(".time img").attr("src",'null');
        over();
    },3000);
Mình tạm ngưng ở đây - từ từ mình sẽ update tiếp.. ... nếu có gì thắc mắc có thể ask mình trên fb.. rất vui lòng được giúp đỡ các bạn...ở đây mình nói hơi chung chung nên có thể các bạn khó hiểu.. nhưng bắt tay vào thực hành các phương pháp trên thì các bạn có thể làm những game đơn giản kiểu như vậy... rất dễ phải không ? hẹn gặp lại...

Chi tiết

Cách dùng Switch trong jQuery

Leave a Comment
 
Mẫu dùng Switch trong jQuery
 
var cnt = $("#div1 p").length;

            switch (true) {
                case (cnt >= 10 && cnt <= 20):
                    alert('10');
                    break;
                case (cnt >= 21 && cnt <= 30):
                   alert('21');
                    break;
                case (cnt >= 31 && cnt <= 40):
                    break;
                default:
                    alert('>41');
            }
Chi tiết
Thuộc VietExp.com. Được tạo bởi Blogger.