SlideShare a Scribd company logo
1 of 47
Download to read offline
jQuery
เบื้องต้น
by Rewadee Piputsoongnern
jQuery คืออะไร
• jQuery เป็น JavaScript Library ที่เก็บรวบรวม
ฟังก์ชันต่าง ๆ ที่ทาให้สามารพัฒนาเว็บ โดยช่วยให้
สามารถเขียนหรือเรียกใช้ JavaScript และ Ajax ให้
ง่ายขึ้น
• jQuery เปิดตัวครั้งแรกในงานบาร์แคมป์นิวยอร์ก โดย
จอห์น เรซิก (John Resig) เมื่อ 14 มกราคม พ.ศ.
2549
What You Should Already Know
• ก่อนจะเริ่มศึกษา jQuery ควรมีความรู้พื้นฐานในเรื่อง
ต่อไปนี้มาก่อน
• HTML
• CSS
• JavaScript
การเพิ่ม jQuery library ในหน้าเว็บเพจ
• jQuery library จะเก็บอยู่ในไฟล์ .js เหมือนกับไฟล์ของ
โค้ด JavaScript ซึ่งในไฟล์ดังกล่าวจะเก็บเมธอดทั้งหมด
ของ jQuery
• รูปแบบการเพิ่มไลบรารีในหน้าเว็บเพจ
<head>
<script type="text/javascript" src="jquery.js"></script>
< /head>
****แท็ก <script> จะต้องแทรกอยู่ภายในแท็ก <head>
jQuery Syntax
• jQuery ออกแบบมาให้เลือก HTML element และ
กาหนด action ให้กับอิลิเมนต์นั้น
• รูปแบบ syntax
$(selector).action()
โดย dollar sign ใช้เพื่อกาหนด jQuery
selector คือส่วนที่เลือก เช่น element , css
action() คือ เมธอดที่ใช้กาหนดการทางานให้กับ selector
jQuery Syntax (ต่อ)
ตัวอย่าง
• $(this).hide() - ซ่อนอิลิเมนต์ปัจจุบัน
• $("p").hide() – ซ่อนทุก paragraph
• $("p.test").hide() - ซ่อนทุก paragraph ที่มี
class="test"
• $("#test").hide() – ซ่อนอิลิเมนต์ที่มีค่า id="test"
jQuery Selector
• jQuery Selector ช่วยให้เราสามารถเลือก HTML
element (หรือกลุ่มของ element) โดยใช้ ชื่ออิลิเมนต์
(element name) , ชื่อแอททริบิวต์ (attribute name)
หรือ โดยเนื้อหา
jQuery Element Selector
jQuery ใช้ CSS selector ในการเลือก HTML element
• ตัวอย่าง
• $("p") - เลือก แท็ก <p> ทั้งหมด
• $("p.intro") - เลือก ทุกแท็ก <p> ที่มี class="intro"
• $("p#demo") – เลือกทุกแท็ก <p> ที่มี id="demo"
jQuery Attribute Selector
jQuery ใช้นิพจน์ xPathในการเลือก HTML elementและ Attribute
• ตัวอย่าง
• $("[href]") - เลือกทุกอิลิเมนต์ที่มีแอททริบิวต์ href
• $("[href='#']") – เลือกทุกอิลิเมนต์ที่แอททริบิวต์ href มีค่าเท่ากับ #
• $("[href!='#']") – เลือกทุกอิลิเมนต์ที่มีแอททริบิวต์ href มีค่าไม่
เท่ากับ #
• $("[href$='.jpg']") – เลือกทุกอิลิเมนต์ที่แอททริบิวต์ href ลงท้าย
ด้วย .jpg
jQuery CSS Selector
jQuery CSS selector สามารถใช้เพื่อแก้ไขคุณสมบัติ CSS
ของ HTML element
• ตัวอย่าง
• $("p").css("background-color","yellow");
ตัวอย่างเพิ่มเติมสาหรับ jQuey Selectors
Syntax คาอธิบาย
$(this) อิลิเมนต์ HTML ปัจจุบัน
$("p") แท็ก <p> ทุกแท็ก
$("p.intro") แท็ก <p> ทุกแท็ก ที่มี class="intro"
$("p#intro") แท็ก <p> ทุกแท็ก ที่มี id="intro"
$("p#intro:first") แท็ก <p> แท็กแรก ที่มี id="intro"
$(".intro") ทุกแท็กที่มี class="intro"
$("#intro") แท็กแรกที่มี id="intro"
$("ul li:first") แท็ก <li> แท็กแรกของแต่ละแท็ก <ul>
$("[href$='.jpg']") ทุกแท็กที่มีแอททริบิวต์ href ที่มีค่าลงท้ายด้วย .jpg
$("div#intro .head") ทุกแท็ก ที่มี class="head" อยู่ภายในแท็ก <div> ที่มี id="intro"
jQuery Event Functions
• การจัดการเหตุการณ์(Event handler ) คือ เมธอดที่ถูก
เรียก เมื่อเกิดเหตุการณ์นั้นขึ้นกับอิลิเมนต์
<html>
<head>
<script type="text/javascript" src="jquery.js“></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
});
});
</script>
</head>
<body>
<h2>This is a heading</h2>
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
<button>Click me</button>
</body>
</html>
ถ้ามีเหตุการณ์คลิกที่อิลิ
เมนต์ button ให้ซ่อน
แท็ก <p> ทั้งหมด
Document Ready Function
• รูปแบบ
• ใช้เพื่อป้องกันว่าโค้ดของ jQuery จะทางานเสร็จก่อนที่เอกสารจะโหลดเสร็จ
• ตัวอย่าง action ที่อาจจะล้มเหลวหากว่าฟังก์ชันรันก่อนที่เอกสารจะโหลด
เสร็จ ได้แก่
– พยายามซ่อนอิลิเมนต์ที่ไม่เคยมีมาก่อน
– พยายามอ่านขนาดของ image ที่ยังไม่ได้โหลด
$(document).ready(function(){
// เขียนฟังก์ชัน ของ jQuery บริเวณนี้
});
jQuery Event Functions (ต่อ)
Event Method Description
$(document).ready(function) เหตุการณ์เมื่อ document โหลดเสร็จแล้ว
$(selector).click(function) เหตุการณ์เมื่อมีการคลิกที่อิลิเมนต์ ที่เลือก
$(selector).dblclick(function) เหตุการณ์เมื่อมีการดับเบิ้ลคลิกที่อิลิเมนต์ ที่เลือก
$(selector).focus(function) เหตุการณ์เมื่อมีโฟกัสที่อิลิเมนต์ ที่เลือก
$(selector).mouseover(function) เหตุการณ์เมื่อมีการเลื่อนเมาส์มาบนอิลิเมนต์ ที่เลือก
ตัวอย่างของ Event function
jQuery Effects
• เช่น การซ่อน(hide) , แสดง(show) , สลับ(toggle) , จาง
หาย(fade) และเคลื่อนไหว(animate) เป็นต้น
jQuery Hide and Show
• ในการซ่อนหรือแสดงอิลิเมนต์ใช้เมธอด hide() และ
show() ตามลาดับ
• รูปแบบ
$(selector).hide(speed,callback)
$(selector).show(speed,callback)
โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้
callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#hide").click(function(){
$("p").hide();
});
$("#show").click(function(){
$("p").show();
});
});
</script>
</head>
<body>
<p>If you click on the "Hide" button, I will disappear.</p>
<button id="hide">Hide</button>
<button id="show">Show</button>
</body>
</html>
ตัวอย่างการใช้ hide() และ show()
jQuery Toggle
• ใช้สาหรับสลับการแสดงผลของHTML element ให้ซ่อน
หรือแสดง
• แสดงอิลิเมนต์ที่ถูกซ่อนอยู่ หรือ ซ่อนอิลิเมนต์ที่แสดงอยู่
• รูปแบบ
$(selector).toggle(speed,callback)
โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้
callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").toggle();
});
});
</script>
</head>
<body>
<button>Toggle</button>
<p>This is a paragraph with little content.</p>
<p>This is another small paragraph.</p>
</body>
</html>
ตัวอย่างการใช้ toggle()
jQuery Slide
• ใช้สาหรับเปลี่ยนความสูงของอิลิเมนต์
• รูปแบบ
$(selector).slideDown (speed,callback)
$(selector).slideUp (speed,callback)
$(selector).slideToggle (speed,callback)
โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้
callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".flip").click(function(){
$(".panel").slideDown("slow");
});
});
</script>
<style type="text/css">
div.panel,p.flip
{
margin:0px;
padding:5px;
text-align:center;
background:#e5eecc;
border:solid 1px #c3c3c3;
}
div.panel
{
height:120px;
display:none;
}
</style>
</head>
ตัวอย่างการใช้ slideDown()
<body>
<div class="panel">
<p>ทอสดบการใช ้เมธอด slideDown.</p>
<p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย
ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น
</p>
</div>
<p class="flip">Show Panel</p>
</body>
</html>
ตัวอย่างการใช้ slideDown()
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".flip").click(function(){
$(".panel").slideUp("slow");
});
});
</script>
<style type="text/css">
div.panel,p.flip
{
margin:0px;
padding:5px;
text-align:center;
background:#e5eecc;
border:solid 1px #c3c3c3;
}
div.panel
{
height:120px;
}
</style>
</head>
ตัวอย่างการใช้ slideUp()
<body>
<div class="panel">
<p>ทอสดบการใช ้เมธอด slideDown.</p>
<p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย
ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น
</p>
</div>
<p class="flip">Hide Panel</p>
</body>
</html>
ตัวอย่างการใช้ slideUp()
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".flip").click(function(){
$(".panel").slideToggle("slow");
});
});
</script>
<style type="text/css">
div.panel,p.flip
{
margin:0px;
padding:5px;
text-align:center;
background:#e5eecc;
border:solid 1px #c3c3c3;
}
div.panel
{
height:120px;
display:none;
}
</style>
</head>
ตัวอย่างการใช้ slideToogle()
<body>
<div class="panel">
<p>ทอสดบการใช ้เมธอด slideDown.</p>
<p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย
ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น
</p>
</div>
<p class="flip">Show / Hide Panel</p>
</body>
</html>
ตัวอย่างการใช้ slideToggle()
jQuery Fade
• ใช้สาหรับเปลี่ยนความทึบของอิลิเมนต์ที่เลือก
• รูปแบบ
$(selector).fadeIn (speed,callback)
$(selector). fadeOut (speed,callback)
$(selector).fadeTo (speed,opacity ,callback)
โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้
callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
opacity คือพาริมเตอร์ที่กาหนดค่าทึบแสง
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div").fadeTo("slow",0.25);
});
});
</script>
</head>
<body>
<div style="background:yellow;width:300px;height:300px">
<button>Click to Fade</button>
</div>
</body>
</html>
ตัวอย่างการใช้ fadeTo()
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("div").click(function(){
$(this).fadeOut(4000);
});
});
</script>
</head>
<body>
<div style="background:yellow;width:200px">CLICK ME AWAY!</div>
<p>ถ ้าคุณคลิกกล่องข ้างบน มันจะหายไป</p>
</body> </html>
ตัวอย่างการใช้ fadeOut()
jQuery Animate แบบกาหนดเอง
• ใช้สาหรับกาหนดการเคลื่อนไหวให้กับอิลิเมนต์ที่เลือก
• รูปแบบ
$(selector).animate ({params} , [duration] , [easing] ,
[callback])
โดย params ใช้กาหนดคุณสมบัติ CSS ที่จะให้เคลื่อนไหว
duration คือ ความเร็วในการเคลื่อนไหว มีค่าเป็น “slow” , “fast” , “normal”
หรือเป็นมิลลิวินาที
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div").animate({height:300},"slow");
$("div").animate({width:300},"slow");
$("div").animate({height:100},"slow");
$("div").animate({width:100},"slow");
});
});
</script>
</head>
<body>
<button>Start Animation</button>
<br /><br />
<div
style="background:#98bf21;height:100px;width:100px;position:relative">
</div>
</body>
</html>
ตัวอย่างการใช้ animate()
jQuery Callback Function
• Callback Function จะทางานเมื่อการเคลื่อนไหวหรือเอฟ
เฟ็กซ์ปัจจุบันทางานเสร็จสมบูรณ์
• รูปแบบ$(selector).animate ({params} , [duration] , [easing] ,
[callback])
โดย params ใช้กาหนดคุณสมบัติ CSS ที่จะให้เคลื่อนไหว
duration คือ ความเร็วในการเคลื่อนไหว มีค่าเป็น “slow” , “fast” , “normal”
หรือเป็นมิลลิวินาที
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").hide(1000,function(){
alert("The paragraph is now hidden");
});
});
});
</script>
</head>
<body>
<button>Hide</button>
<p>This is a paragraph with little content.</p>
</body>
</html>
ตัวอย่างการใช้ hide() ที่มี callback function
jQuery AJAX
• jQuery AJAX ช่วยให้เราร้องขอ(request) เอกสาร txt
,html , xml หรือ JSON จากเซิร์ฟเวอร์ได้ ทั้งแบบ HTTP
GET และ HTTP POST
• รูปแบบ
Request Description
$(selector).load(url,data,callback) โหลดข้อมูลจากเซิร์ฟเวอร์ ใส่ลงในอิลิเมนต์ที่
เลือก
$.ajax(options) โหลดข้อมูลจากเซิร์ฟเวอร์ ใส่ลงในออบเจ็กต์
XMLHttpRequest
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("div").load('test1.php');
});
});
</script>
</head>
<body>
<div><h2>Let AJAX change this text</h2></div>
<button>Change Content</button>
</body>
</html>
ตัวอย่างการใช้ load()
<?php
header("content-type: application/x-javascript; charset=TIS-620");
echo "ทดสอบ";
?>
test1.php
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$.ajax({url:"test1.txt", success:function(result){
$("div").html(result);
}});
});
});
</script>
</head>
<body>
<div><h2>Let AJAX change this text</h2></div>
<button>Change Content</button>
</body>
</html>
ตัวอย่างการใช้ ajax()
ตัวอย่าง 1
ทาเมนูแบบลูกตาปลา
• 1. สร้างไฟล์ fisheyes_menu.html
• 2. เขียนคาสั่ง JavaScript ในส่วนแท็ก <head>
<script type="text/javascript" src="jquery/jquery-1.6.2.js"></script>
<script type="text/javascript">
$(function(){
$("ul#eyefish li a img").hover(function(){ /* เงื่อนไขเมื่อเอาเมาส์เคลื่อนอยู่เหนือรูปภาพ*/
$(this).animate({
width:120,
height:100
},300);
},function(){ /* เงื่อนไขเมื่อเอาเมาส์เคลื่อนอยู่ออกจากรูปภาพ*/
$(this).animate({ /* กาหนดการเคลื่อนไหวด ้วยการลดขนาดความกว ้างและความสูงของรูป
ใช ้เวลาหน่วง 0.300 วินาที*/
width:85,
height:71
},300);
});
});
</script>
ทาเมนูแบบลูกตาปลา
• 3. เขียนคาสั่งกาหนด css
<style type="text/css">
img{/* กาหนดขอบให ้กับ รูปภาพ*/
border:0;
}
ul#eyefish{ /* กาหนดขอบเขตของเมนู */
margin:0;padding:0;
margin-left:100px;
display:block;
height:100px;
}
ul#eyefish li{ /* กาหนด css ให ้กับ list รายการเมนู*/
list-style:none outside;
float:left;
}
ul#eyefish li a img{ /* กาหนดขนาดเริ่มต ้นให ้กับรูปภาพ */
width:85px;
height:71px;
}
</style>
ทาเมนูแบบลูกตาปลา
• 4. เขียนคาสั่ง HTML แสดงรูปเมนู
<body>
<ul id="eyefish">
<li><a href="#"><img src="images/calendar.png" /></a></li>
<li><a href="#"><img src="images/email.png" /></a></li>
<li><a href="#"><img src="images/history.png" /></a></li>
<li><a href="#"><img src="images/home.png" /></a></li>
<li><a href="#"><img src="images/music.png" /></a></li>
<li><a href="#"><img src="images/portfolio.png" /></a></li>
<li><a href="#"><img src="images/video.png" /></a></li>
</ul>
</body>
**รูปภาพอยู่ในโฟลเดอร์ images
ตัวอย่าง 2
ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX
• 1. สร้างไฟล์ post.html
• 2. เขียนคาสั่ง HTML สร้างฟอร์มสาหรับส่งข้อมูลในส่วน body
<body>
<form id="form1" name="form1" method="post" action="">
<p>ชื่อ
<input type="text" name="name" id="name" />
<br />
อีเมลล์
<input type="text" name="email" id="email" />
<br />
<input type="button" name="Send" id="Send" value="Send" />
</p>
</form>
</body>
ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX
• 3. เขียนคาสั่ง JavaScript เพื่อส่งข้อมูลแบบ AJAX
<script type="text/javascript" src="jquery/jquery-1.6.2.js"></script>
<script type="text/javascript">
$(function(){
$("input#Send").click(function(){
var url="test.php"; // ไฟล์ที่ต ้องการรับค ้า
var dataSet={ name: $("input#name").val(), email:
$("input#email").val() }; // กาหนดชื่อและค่าที่ต ้องการส่ง
$.post(url,dataSet,function(data){
alert(data);
});
});
});
</script>
ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX
• 4. สร้างไฟล์ php ชื่อ test.php เพื่อรับข้อมูลที่ส่งมา
<?php
if(isset($_POST['name']) && $_POST['name']!=""){
echo "ข ้อมูลที่ได ้รับคือ : ".$_POST['name'] ." และ ".$_POST['email'];
}
?>
** ภาษาไทยอาจจะมีปัญหา ไม่แสดงผล
ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX
• 5. เพิ่มฟังก์ชันในการแปลงข้อมูลภาษาไทย สาหรับ php ในtest.php
<?php
function js_thai_encode($data)
{ // ฟังก์ชันเข ้ารหัสภาษาไทย
if (is_array($data))
{
foreach($data as $a => $b)
{
if (is_array($data[$a]))
{$data[$a] = js_thai_encode($data[$a]); }
else
{$data[$a] = iconv("tis-620","utf-8",$b); }
}
}
else
{ $data =iconv("tis-620","utf-8",$data); }
return $data;
}?>
ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX
• 6. แก้ไขคาสั่งในการรับและแสดงข้อความ
<?php
if(isset($_POST['name']) && $_POST['name']!=""){
$data = "ข ้อมูลที่ได ้รับคือ : ".$_POST['name'] ." และ ".$_POST['email'];
//เรียกใช ้งานฟังก์ชัน js_thai_encode
echo js_thai_encode($data) ;
}
?>

More Related Content

What's hot

ქცევის წესები (ნანა მატუა)
ქცევის წესები  (ნანა მატუა)ქცევის წესები  (ნანა მატუა)
ქცევის წესები (ნანა მატუა)Nana Matua
 
แบบอาลักษณ์ - Peterfineart.com
แบบอาลักษณ์ - Peterfineart.comแบบอาลักษณ์ - Peterfineart.com
แบบอาลักษณ์ - Peterfineart.competer dontoom
 
โครงงานประเภทการทดลองทฤษฎี
โครงงานประเภทการทดลองทฤษฎีโครงงานประเภทการทดลองทฤษฎี
โครงงานประเภทการทดลองทฤษฎีปรียา พรมเสน
 
ทฤษฎีของออซูเบล
ทฤษฎีของออซูเบลทฤษฎีของออซูเบล
ทฤษฎีของออซูเบลNusaiMath
 
ია და ჭიანჭველები
ია და ჭიანჭველებიია და ჭიანჭველები
ია და ჭიანჭველებიMaia Popkhadze
 
สูตรสถิติ
สูตรสถิติสูตรสถิติ
สูตรสถิติTaew Nantawan
 
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรอง
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรองการอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรอง
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรองพัน พัน
 
ინდივიდუალური სასწავლო გეგმა
ინდივიდუალური სასწავლო გეგმაინდივიდუალური სასწავლო გეგმა
ინდივიდუალური სასწავლო გეგმაKhatuna Bedenashvili
 
การให้คะแนนแบบรูบิค[1]
การให้คะแนนแบบรูบิค[1]การให้คะแนนแบบรูบิค[1]
การให้คะแนนแบบรูบิค[1]Siriphan Kristiansen
 
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุง
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุงโครงงานเรื่องเทียนหอมตะไคร้ไล่ยุง
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุงPornthip Nabnain
 
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้NU
 
อาหารไทย
อาหารไทยอาหารไทย
อาหารไทยBoOm mm
 
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยการเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยBenjapron Seesukong
 
ადაპტირებული გეგმა 2
ადაპტირებული გეგმა 2ადაპტირებული გეგმა 2
ადაპტირებული გეგმა 2Khatuna Bedenashvili
 
วิธีการสร้างตารางสำเร็จรูปใน Word
วิธีการสร้างตารางสำเร็จรูปใน Wordวิธีการสร้างตารางสำเร็จรูปใน Word
วิธีการสร้างตารางสำเร็จรูปใน Wordพัน พัน
 

What's hot (20)

ქცევის წესები (ნანა მატუა)
ქცევის წესები  (ნანა მატუა)ქცევის წესები  (ნანა მატუა)
ქცევის წესები (ნანა მატუა)
 
แผนที่ (Map)
แผนที่ (Map)แผนที่ (Map)
แผนที่ (Map)
 
แบบอาลักษณ์ - Peterfineart.com
แบบอาลักษณ์ - Peterfineart.comแบบอาลักษณ์ - Peterfineart.com
แบบอาลักษณ์ - Peterfineart.com
 
งานช่างพื้นฐาน
งานช่างพื้นฐานงานช่างพื้นฐาน
งานช่างพื้นฐาน
 
เงื่อน
เงื่อนเงื่อน
เงื่อน
 
โครงงานประเภทการทดลองทฤษฎี
โครงงานประเภทการทดลองทฤษฎีโครงงานประเภทการทดลองทฤษฎี
โครงงานประเภทการทดลองทฤษฎี
 
การสอนแบบนิรนัย
การสอนแบบนิรนัยการสอนแบบนิรนัย
การสอนแบบนิรนัย
 
ทฤษฎีของออซูเบล
ทฤษฎีของออซูเบลทฤษฎีของออซูเบล
ทฤษฎีของออซูเบล
 
ია და ჭიანჭველები
ია და ჭიანჭველებიია და ჭიანჭველები
ია და ჭიანჭველები
 
สูตรสถิติ
สูตรสถิติสูตรสถิติ
สูตรสถิติ
 
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรอง
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรองการอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรอง
การอ่านพินิจสาร บทร้อยแก้ว และ บทร้อยกรอง
 
ინდივიდუალური სასწავლო გეგმა
ინდივიდუალური სასწავლო გეგმაინდივიდუალური სასწავლო გეგმა
ინდივიდუალური სასწავლო გეგმა
 
9 pert
9 pert9 pert
9 pert
 
การให้คะแนนแบบรูบิค[1]
การให้คะแนนแบบรูบิค[1]การให้คะแนนแบบรูบิค[1]
การให้คะแนนแบบรูบิค[1]
 
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุง
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุงโครงงานเรื่องเทียนหอมตะไคร้ไล่ยุง
โครงงานเรื่องเทียนหอมตะไคร้ไล่ยุง
 
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้
การตรวจสอบคุณภาพของเครื่องมือวัดผลการเรียนรู้
 
อาหารไทย
อาหารไทยอาหารไทย
อาหารไทย
 
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัยการเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
การเขียนข้อสอบวัดพฤติกรรมด้านพุทธิพิสัย
 
ადაპტირებული გეგმა 2
ადაპტირებული გეგმა 2ადაპტირებული გეგმა 2
ადაპტირებული გეგმა 2
 
วิธีการสร้างตารางสำเร็จรูปใน Word
วิธีการสร้างตารางสำเร็จรูปใน Wordวิธีการสร้างตารางสำเร็จรูปใน Word
วิธีการสร้างตารางสำเร็จรูปใน Word
 

Similar to Jquery-Begining (8)

การสร้างเว็บด้วย Bootstrap framework
การสร้างเว็บด้วย Bootstrap frameworkการสร้างเว็บด้วย Bootstrap framework
การสร้างเว็บด้วย Bootstrap framework
 
เขียนเว็บไซต์ด้วย Html 5
เขียนเว็บไซต์ด้วย Html 5เขียนเว็บไซต์ด้วย Html 5
เขียนเว็บไซต์ด้วย Html 5
 
Java script 1
Java script 1Java script 1
Java script 1
 
Workshop Advance CSS3 animation
Workshop Advance CSS3 animationWorkshop Advance CSS3 animation
Workshop Advance CSS3 animation
 
Serverless solution
Serverless solutionServerless solution
Serverless solution
 
Javacentrix com chap11-2
Javacentrix com chap11-2Javacentrix com chap11-2
Javacentrix com chap11-2
 
Jaxb part 2
Jaxb part 2Jaxb part 2
Jaxb part 2
 
Jaxb part 2
Jaxb part 2Jaxb part 2
Jaxb part 2
 

More from Attaporn Ninsuwan

Chapter 12 - Computer Forensics
Chapter 12 - Computer ForensicsChapter 12 - Computer Forensics
Chapter 12 - Computer ForensicsAttaporn Ninsuwan
 
Techniques for data hiding p
Techniques for data hiding pTechniques for data hiding p
Techniques for data hiding pAttaporn Ninsuwan
 
Stop badware infected_sites_report_062408
Stop badware infected_sites_report_062408Stop badware infected_sites_report_062408
Stop badware infected_sites_report_062408Attaporn Ninsuwan
 
Steganography past-present-future 552
Steganography past-present-future 552Steganography past-present-future 552
Steganography past-present-future 552Attaporn Ninsuwan
 
Chapter5 - The Discrete-Time Fourier Transform
Chapter5 - The Discrete-Time Fourier TransformChapter5 - The Discrete-Time Fourier Transform
Chapter5 - The Discrete-Time Fourier TransformAttaporn Ninsuwan
 
Chapter4 - The Continuous-Time Fourier Transform
Chapter4 - The Continuous-Time Fourier TransformChapter4 - The Continuous-Time Fourier Transform
Chapter4 - The Continuous-Time Fourier TransformAttaporn Ninsuwan
 
Chapter3 - Fourier Series Representation of Periodic Signals
Chapter3 - Fourier Series Representation of Periodic SignalsChapter3 - Fourier Series Representation of Periodic Signals
Chapter3 - Fourier Series Representation of Periodic SignalsAttaporn Ninsuwan
 
Chapter2 - Linear Time-Invariant System
Chapter2 - Linear Time-Invariant SystemChapter2 - Linear Time-Invariant System
Chapter2 - Linear Time-Invariant SystemAttaporn Ninsuwan
 

More from Attaporn Ninsuwan (20)

J query fundamentals
J query fundamentalsJ query fundamentals
J query fundamentals
 
Jquery enlightenment
Jquery enlightenmentJquery enlightenment
Jquery enlightenment
 
Br ainfocom94
Br ainfocom94Br ainfocom94
Br ainfocom94
 
Chapter 12 - Computer Forensics
Chapter 12 - Computer ForensicsChapter 12 - Computer Forensics
Chapter 12 - Computer Forensics
 
Techniques for data hiding p
Techniques for data hiding pTechniques for data hiding p
Techniques for data hiding p
 
Stop badware infected_sites_report_062408
Stop badware infected_sites_report_062408Stop badware infected_sites_report_062408
Stop badware infected_sites_report_062408
 
Steganography past-present-future 552
Steganography past-present-future 552Steganography past-present-future 552
Steganography past-present-future 552
 
Ch03-Computer Security
Ch03-Computer SecurityCh03-Computer Security
Ch03-Computer Security
 
Ch02-Computer Security
Ch02-Computer SecurityCh02-Computer Security
Ch02-Computer Security
 
Ch01-Computer Security
Ch01-Computer SecurityCh01-Computer Security
Ch01-Computer Security
 
Ch8-Computer Security
Ch8-Computer SecurityCh8-Computer Security
Ch8-Computer Security
 
Ch7-Computer Security
Ch7-Computer SecurityCh7-Computer Security
Ch7-Computer Security
 
Ch6-Computer Security
Ch6-Computer SecurityCh6-Computer Security
Ch6-Computer Security
 
Ch06b-Computer Security
Ch06b-Computer SecurityCh06b-Computer Security
Ch06b-Computer Security
 
Ch5-Computer Security
Ch5-Computer SecurityCh5-Computer Security
Ch5-Computer Security
 
Ch04-Computer Security
Ch04-Computer SecurityCh04-Computer Security
Ch04-Computer Security
 
Chapter5 - The Discrete-Time Fourier Transform
Chapter5 - The Discrete-Time Fourier TransformChapter5 - The Discrete-Time Fourier Transform
Chapter5 - The Discrete-Time Fourier Transform
 
Chapter4 - The Continuous-Time Fourier Transform
Chapter4 - The Continuous-Time Fourier TransformChapter4 - The Continuous-Time Fourier Transform
Chapter4 - The Continuous-Time Fourier Transform
 
Chapter3 - Fourier Series Representation of Periodic Signals
Chapter3 - Fourier Series Representation of Periodic SignalsChapter3 - Fourier Series Representation of Periodic Signals
Chapter3 - Fourier Series Representation of Periodic Signals
 
Chapter2 - Linear Time-Invariant System
Chapter2 - Linear Time-Invariant SystemChapter2 - Linear Time-Invariant System
Chapter2 - Linear Time-Invariant System
 

Jquery-Begining

  • 2. jQuery คืออะไร • jQuery เป็น JavaScript Library ที่เก็บรวบรวม ฟังก์ชันต่าง ๆ ที่ทาให้สามารพัฒนาเว็บ โดยช่วยให้ สามารถเขียนหรือเรียกใช้ JavaScript และ Ajax ให้ ง่ายขึ้น • jQuery เปิดตัวครั้งแรกในงานบาร์แคมป์นิวยอร์ก โดย จอห์น เรซิก (John Resig) เมื่อ 14 มกราคม พ.ศ. 2549
  • 3. What You Should Already Know • ก่อนจะเริ่มศึกษา jQuery ควรมีความรู้พื้นฐานในเรื่อง ต่อไปนี้มาก่อน • HTML • CSS • JavaScript
  • 4. การเพิ่ม jQuery library ในหน้าเว็บเพจ • jQuery library จะเก็บอยู่ในไฟล์ .js เหมือนกับไฟล์ของ โค้ด JavaScript ซึ่งในไฟล์ดังกล่าวจะเก็บเมธอดทั้งหมด ของ jQuery • รูปแบบการเพิ่มไลบรารีในหน้าเว็บเพจ <head> <script type="text/javascript" src="jquery.js"></script> < /head> ****แท็ก <script> จะต้องแทรกอยู่ภายในแท็ก <head>
  • 5. jQuery Syntax • jQuery ออกแบบมาให้เลือก HTML element และ กาหนด action ให้กับอิลิเมนต์นั้น • รูปแบบ syntax $(selector).action() โดย dollar sign ใช้เพื่อกาหนด jQuery selector คือส่วนที่เลือก เช่น element , css action() คือ เมธอดที่ใช้กาหนดการทางานให้กับ selector
  • 6. jQuery Syntax (ต่อ) ตัวอย่าง • $(this).hide() - ซ่อนอิลิเมนต์ปัจจุบัน • $("p").hide() – ซ่อนทุก paragraph • $("p.test").hide() - ซ่อนทุก paragraph ที่มี class="test" • $("#test").hide() – ซ่อนอิลิเมนต์ที่มีค่า id="test"
  • 7. jQuery Selector • jQuery Selector ช่วยให้เราสามารถเลือก HTML element (หรือกลุ่มของ element) โดยใช้ ชื่ออิลิเมนต์ (element name) , ชื่อแอททริบิวต์ (attribute name) หรือ โดยเนื้อหา
  • 8. jQuery Element Selector jQuery ใช้ CSS selector ในการเลือก HTML element • ตัวอย่าง • $("p") - เลือก แท็ก <p> ทั้งหมด • $("p.intro") - เลือก ทุกแท็ก <p> ที่มี class="intro" • $("p#demo") – เลือกทุกแท็ก <p> ที่มี id="demo"
  • 9. jQuery Attribute Selector jQuery ใช้นิพจน์ xPathในการเลือก HTML elementและ Attribute • ตัวอย่าง • $("[href]") - เลือกทุกอิลิเมนต์ที่มีแอททริบิวต์ href • $("[href='#']") – เลือกทุกอิลิเมนต์ที่แอททริบิวต์ href มีค่าเท่ากับ # • $("[href!='#']") – เลือกทุกอิลิเมนต์ที่มีแอททริบิวต์ href มีค่าไม่ เท่ากับ # • $("[href$='.jpg']") – เลือกทุกอิลิเมนต์ที่แอททริบิวต์ href ลงท้าย ด้วย .jpg
  • 10. jQuery CSS Selector jQuery CSS selector สามารถใช้เพื่อแก้ไขคุณสมบัติ CSS ของ HTML element • ตัวอย่าง • $("p").css("background-color","yellow");
  • 11. ตัวอย่างเพิ่มเติมสาหรับ jQuey Selectors Syntax คาอธิบาย $(this) อิลิเมนต์ HTML ปัจจุบัน $("p") แท็ก <p> ทุกแท็ก $("p.intro") แท็ก <p> ทุกแท็ก ที่มี class="intro" $("p#intro") แท็ก <p> ทุกแท็ก ที่มี id="intro" $("p#intro:first") แท็ก <p> แท็กแรก ที่มี id="intro" $(".intro") ทุกแท็กที่มี class="intro" $("#intro") แท็กแรกที่มี id="intro" $("ul li:first") แท็ก <li> แท็กแรกของแต่ละแท็ก <ul> $("[href$='.jpg']") ทุกแท็กที่มีแอททริบิวต์ href ที่มีค่าลงท้ายด้วย .jpg $("div#intro .head") ทุกแท็ก ที่มี class="head" อยู่ภายในแท็ก <div> ที่มี id="intro"
  • 12. jQuery Event Functions • การจัดการเหตุการณ์(Event handler ) คือ เมธอดที่ถูก เรียก เมื่อเกิดเหตุการณ์นั้นขึ้นกับอิลิเมนต์
  • 13. <html> <head> <script type="text/javascript" src="jquery.js“></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").hide(); }); }); </script> </head> <body> <h2>This is a heading</h2> <p>This is a paragraph.</p> <p>This is another paragraph.</p> <button>Click me</button> </body> </html> ถ้ามีเหตุการณ์คลิกที่อิลิ เมนต์ button ให้ซ่อน แท็ก <p> ทั้งหมด
  • 14. Document Ready Function • รูปแบบ • ใช้เพื่อป้องกันว่าโค้ดของ jQuery จะทางานเสร็จก่อนที่เอกสารจะโหลดเสร็จ • ตัวอย่าง action ที่อาจจะล้มเหลวหากว่าฟังก์ชันรันก่อนที่เอกสารจะโหลด เสร็จ ได้แก่ – พยายามซ่อนอิลิเมนต์ที่ไม่เคยมีมาก่อน – พยายามอ่านขนาดของ image ที่ยังไม่ได้โหลด $(document).ready(function(){ // เขียนฟังก์ชัน ของ jQuery บริเวณนี้ });
  • 15. jQuery Event Functions (ต่อ) Event Method Description $(document).ready(function) เหตุการณ์เมื่อ document โหลดเสร็จแล้ว $(selector).click(function) เหตุการณ์เมื่อมีการคลิกที่อิลิเมนต์ ที่เลือก $(selector).dblclick(function) เหตุการณ์เมื่อมีการดับเบิ้ลคลิกที่อิลิเมนต์ ที่เลือก $(selector).focus(function) เหตุการณ์เมื่อมีโฟกัสที่อิลิเมนต์ ที่เลือก $(selector).mouseover(function) เหตุการณ์เมื่อมีการเลื่อนเมาส์มาบนอิลิเมนต์ ที่เลือก ตัวอย่างของ Event function
  • 16. jQuery Effects • เช่น การซ่อน(hide) , แสดง(show) , สลับ(toggle) , จาง หาย(fade) และเคลื่อนไหว(animate) เป็นต้น
  • 17. jQuery Hide and Show • ในการซ่อนหรือแสดงอิลิเมนต์ใช้เมธอด hide() และ show() ตามลาดับ • รูปแบบ $(selector).hide(speed,callback) $(selector).show(speed,callback) โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้ callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
  • 18. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("#hide").click(function(){ $("p").hide(); }); $("#show").click(function(){ $("p").show(); }); }); </script> </head> <body> <p>If you click on the "Hide" button, I will disappear.</p> <button id="hide">Hide</button> <button id="show">Show</button> </body> </html> ตัวอย่างการใช้ hide() และ show()
  • 19. jQuery Toggle • ใช้สาหรับสลับการแสดงผลของHTML element ให้ซ่อน หรือแสดง • แสดงอิลิเมนต์ที่ถูกซ่อนอยู่ หรือ ซ่อนอิลิเมนต์ที่แสดงอยู่ • รูปแบบ $(selector).toggle(speed,callback) โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้ callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
  • 20. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").toggle(); }); }); </script> </head> <body> <button>Toggle</button> <p>This is a paragraph with little content.</p> <p>This is another small paragraph.</p> </body> </html> ตัวอย่างการใช้ toggle()
  • 21. jQuery Slide • ใช้สาหรับเปลี่ยนความสูงของอิลิเมนต์ • รูปแบบ $(selector).slideDown (speed,callback) $(selector).slideUp (speed,callback) $(selector).slideToggle (speed,callback) โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้ callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว
  • 22. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideDown("slow"); }); }); </script> <style type="text/css"> div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; display:none; } </style> </head> ตัวอย่างการใช้ slideDown()
  • 23. <body> <div class="panel"> <p>ทอสดบการใช ้เมธอด slideDown.</p> <p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น </p> </div> <p class="flip">Show Panel</p> </body> </html> ตัวอย่างการใช้ slideDown()
  • 24. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideUp("slow"); }); }); </script> <style type="text/css"> div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; } </style> </head> ตัวอย่างการใช้ slideUp()
  • 25. <body> <div class="panel"> <p>ทอสดบการใช ้เมธอด slideDown.</p> <p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น </p> </div> <p class="flip">Hide Panel</p> </body> </html> ตัวอย่างการใช้ slideUp()
  • 26. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $(".flip").click(function(){ $(".panel").slideToggle("slow"); }); }); </script> <style type="text/css"> div.panel,p.flip { margin:0px; padding:5px; text-align:center; background:#e5eecc; border:solid 1px #c3c3c3; } div.panel { height:120px; display:none; } </style> </head> ตัวอย่างการใช้ slideToogle()
  • 27. <body> <div class="panel"> <p>ทอสดบการใช ้เมธอด slideDown.</p> <p>jQuery เป็น JavaScript Library ที่เก็บรวบรวมฟังก์ชันต่าง ๆ ที่ทาให ้สามารพัฒนาเว็บ โดย ช่วยให ้สามารถเขียนหรือเรียกใช ้JavaScript และ Ajax ให ้ง่ายขึ้น </p> </div> <p class="flip">Show / Hide Panel</p> </body> </html> ตัวอย่างการใช้ slideToggle()
  • 28. jQuery Fade • ใช้สาหรับเปลี่ยนความทึบของอิลิเมนต์ที่เลือก • รูปแบบ $(selector).fadeIn (speed,callback) $(selector). fadeOut (speed,callback) $(selector).fadeTo (speed,opacity ,callback) โดย speed อาจกาหนดเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที ก็ได้ callback คือ ฟังก์ชันที่จะให้ทางานหลังจากซ่อน หรือ แสดง อิลิเมนต์แล้ว opacity คือพาริมเตอร์ที่กาหนดค่าทึบแสง
  • 29. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("div").fadeTo("slow",0.25); }); }); </script> </head> <body> <div style="background:yellow;width:300px;height:300px"> <button>Click to Fade</button> </div> </body> </html> ตัวอย่างการใช้ fadeTo()
  • 30. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("div").click(function(){ $(this).fadeOut(4000); }); }); </script> </head> <body> <div style="background:yellow;width:200px">CLICK ME AWAY!</div> <p>ถ ้าคุณคลิกกล่องข ้างบน มันจะหายไป</p> </body> </html> ตัวอย่างการใช้ fadeOut()
  • 31. jQuery Animate แบบกาหนดเอง • ใช้สาหรับกาหนดการเคลื่อนไหวให้กับอิลิเมนต์ที่เลือก • รูปแบบ $(selector).animate ({params} , [duration] , [easing] , [callback]) โดย params ใช้กาหนดคุณสมบัติ CSS ที่จะให้เคลื่อนไหว duration คือ ความเร็วในการเคลื่อนไหว มีค่าเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที
  • 32. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("div").animate({height:300},"slow"); $("div").animate({width:300},"slow"); $("div").animate({height:100},"slow"); $("div").animate({width:100},"slow"); }); }); </script> </head> <body> <button>Start Animation</button> <br /><br /> <div style="background:#98bf21;height:100px;width:100px;position:relative"> </div> </body> </html> ตัวอย่างการใช้ animate()
  • 33. jQuery Callback Function • Callback Function จะทางานเมื่อการเคลื่อนไหวหรือเอฟ เฟ็กซ์ปัจจุบันทางานเสร็จสมบูรณ์ • รูปแบบ$(selector).animate ({params} , [duration] , [easing] , [callback]) โดย params ใช้กาหนดคุณสมบัติ CSS ที่จะให้เคลื่อนไหว duration คือ ความเร็วในการเคลื่อนไหว มีค่าเป็น “slow” , “fast” , “normal” หรือเป็นมิลลิวินาที
  • 34. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").hide(1000,function(){ alert("The paragraph is now hidden"); }); }); }); </script> </head> <body> <button>Hide</button> <p>This is a paragraph with little content.</p> </body> </html> ตัวอย่างการใช้ hide() ที่มี callback function
  • 35. jQuery AJAX • jQuery AJAX ช่วยให้เราร้องขอ(request) เอกสาร txt ,html , xml หรือ JSON จากเซิร์ฟเวอร์ได้ ทั้งแบบ HTTP GET และ HTTP POST • รูปแบบ Request Description $(selector).load(url,data,callback) โหลดข้อมูลจากเซิร์ฟเวอร์ ใส่ลงในอิลิเมนต์ที่ เลือก $.ajax(options) โหลดข้อมูลจากเซิร์ฟเวอร์ ใส่ลงในออบเจ็กต์ XMLHttpRequest
  • 36. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("div").load('test1.php'); }); }); </script> </head> <body> <div><h2>Let AJAX change this text</h2></div> <button>Change Content</button> </body> </html> ตัวอย่างการใช้ load() <?php header("content-type: application/x-javascript; charset=TIS-620"); echo "ทดสอบ"; ?> test1.php
  • 37. <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $.ajax({url:"test1.txt", success:function(result){ $("div").html(result); }}); }); }); </script> </head> <body> <div><h2>Let AJAX change this text</h2></div> <button>Change Content</button> </body> </html> ตัวอย่างการใช้ ajax()
  • 39. ทาเมนูแบบลูกตาปลา • 1. สร้างไฟล์ fisheyes_menu.html • 2. เขียนคาสั่ง JavaScript ในส่วนแท็ก <head> <script type="text/javascript" src="jquery/jquery-1.6.2.js"></script> <script type="text/javascript"> $(function(){ $("ul#eyefish li a img").hover(function(){ /* เงื่อนไขเมื่อเอาเมาส์เคลื่อนอยู่เหนือรูปภาพ*/ $(this).animate({ width:120, height:100 },300); },function(){ /* เงื่อนไขเมื่อเอาเมาส์เคลื่อนอยู่ออกจากรูปภาพ*/ $(this).animate({ /* กาหนดการเคลื่อนไหวด ้วยการลดขนาดความกว ้างและความสูงของรูป ใช ้เวลาหน่วง 0.300 วินาที*/ width:85, height:71 },300); }); }); </script>
  • 40. ทาเมนูแบบลูกตาปลา • 3. เขียนคาสั่งกาหนด css <style type="text/css"> img{/* กาหนดขอบให ้กับ รูปภาพ*/ border:0; } ul#eyefish{ /* กาหนดขอบเขตของเมนู */ margin:0;padding:0; margin-left:100px; display:block; height:100px; } ul#eyefish li{ /* กาหนด css ให ้กับ list รายการเมนู*/ list-style:none outside; float:left; } ul#eyefish li a img{ /* กาหนดขนาดเริ่มต ้นให ้กับรูปภาพ */ width:85px; height:71px; } </style>
  • 41. ทาเมนูแบบลูกตาปลา • 4. เขียนคาสั่ง HTML แสดงรูปเมนู <body> <ul id="eyefish"> <li><a href="#"><img src="images/calendar.png" /></a></li> <li><a href="#"><img src="images/email.png" /></a></li> <li><a href="#"><img src="images/history.png" /></a></li> <li><a href="#"><img src="images/home.png" /></a></li> <li><a href="#"><img src="images/music.png" /></a></li> <li><a href="#"><img src="images/portfolio.png" /></a></li> <li><a href="#"><img src="images/video.png" /></a></li> </ul> </body> **รูปภาพอยู่ในโฟลเดอร์ images
  • 43. ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX • 1. สร้างไฟล์ post.html • 2. เขียนคาสั่ง HTML สร้างฟอร์มสาหรับส่งข้อมูลในส่วน body <body> <form id="form1" name="form1" method="post" action=""> <p>ชื่อ <input type="text" name="name" id="name" /> <br /> อีเมลล์ <input type="text" name="email" id="email" /> <br /> <input type="button" name="Send" id="Send" value="Send" /> </p> </form> </body>
  • 44. ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX • 3. เขียนคาสั่ง JavaScript เพื่อส่งข้อมูลแบบ AJAX <script type="text/javascript" src="jquery/jquery-1.6.2.js"></script> <script type="text/javascript"> $(function(){ $("input#Send").click(function(){ var url="test.php"; // ไฟล์ที่ต ้องการรับค ้า var dataSet={ name: $("input#name").val(), email: $("input#email").val() }; // กาหนดชื่อและค่าที่ต ้องการส่ง $.post(url,dataSet,function(data){ alert(data); }); }); }); </script>
  • 45. ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX • 4. สร้างไฟล์ php ชื่อ test.php เพื่อรับข้อมูลที่ส่งมา <?php if(isset($_POST['name']) && $_POST['name']!=""){ echo "ข ้อมูลที่ได ้รับคือ : ".$_POST['name'] ." และ ".$_POST['email']; } ?> ** ภาษาไทยอาจจะมีปัญหา ไม่แสดงผล
  • 46. ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX • 5. เพิ่มฟังก์ชันในการแปลงข้อมูลภาษาไทย สาหรับ php ในtest.php <?php function js_thai_encode($data) { // ฟังก์ชันเข ้ารหัสภาษาไทย if (is_array($data)) { foreach($data as $a => $b) { if (is_array($data[$a])) {$data[$a] = js_thai_encode($data[$a]); } else {$data[$a] = iconv("tis-620","utf-8",$b); } } } else { $data =iconv("tis-620","utf-8",$data); } return $data; }?>
  • 47. ส่งข้อมูลผ่านฟอร์มแบบ post แบบ AJAX • 6. แก้ไขคาสั่งในการรับและแสดงข้อความ <?php if(isset($_POST['name']) && $_POST['name']!=""){ $data = "ข ้อมูลที่ได ้รับคือ : ".$_POST['name'] ." และ ".$_POST['email']; //เรียกใช ้งานฟังก์ชัน js_thai_encode echo js_thai_encode($data) ; } ?>