JavaScript

มาใช้ฟอนต์แปลก ๆ ในเว็บกันเถอะ

โดยปกติแล้ว ในเบราเซอร์ไม่สามารถใช้ฟอนต์แปลก ๆ ได้ แต่ตอนนี้เราสามารถใช้งานได้แล้ว โดยใช้ Cufón (สามารถอ่านเพิ่มเติมได้ที่ About Cufón) ซึ่งการใช้เว็บ cufón นั้นก็ไม่ยาก ดังนี้
1. เข้าไปที่เว็บไซต์ cufón - fonts for the people

2. อัพโหลดฟอนต์ที่ต้องการ จากนั้นเให้เลือกดังนี้

  • ในส่วนของ Select the font you'd like to use ให้เลือก The EULAs of these fonts allow Web Embedding (without Adobe Flash)
  • ในส่วนของ Include the following glyphs (if available) ให้เลือก All
  • ในส่วนของ Terms ให้เลือก I acknowledge and accept these terms

3. เมื่อเสร็จแล้วให้กดปุ่ม Let's do this! จากนั้นก็รอให้ทางเว็บไซต์ส่ง JavaScript กลับมาให้

ใช้ jFeed จัดการข้อมูลที่มีรูปแบบ XML

สัปดาห์ที่ผ่านมานี้ ฝนตกบ่อยมาก ผมจึงเข้าไปเว็บไซต์ของกรมอุตุนิยมวิทยา แล้วก็ไปดูหน้าจังหวัดนครปฐม ผมสังเกตเห็นว่ามีบริการฟีด (Feed) ด้วย ผมก็คิดว่าถ้าดึงข้อมูลจากฟีดมาใช้ในเว็บของเราคงจะดี แล้วผมอยากรู้ว่า jQuery จะทำพาร์เซอร์ข้อมูลที่เป็น XML ได้มั้ยจึงค้นหาจาก Google แล้วก็พบ jFeed จึงได้ลองเอามาศึกษา แต่ผมพบว่าไม่สามารถฟีดข้อมูลจากกรมอุตุนิยมวิทยาได้ จึงลองแก้ปัญหาไปเรื่อยๆ จนรู้ว่า ไฟล์ proxy.php ที่ให้มานั้นใช้งานไม่ได้ (ที่มหาวิทยาลัย มีการใช้งาน proxy ด้วย) ดังนั้นผมจึงแก้ด้วยการพี่งพา HTTP_Request Package โดยติดตั้งด้วยคำสั่ง

Fade Image with jQuery

jQuery เป็น JavaScript Library ตัวหนึ่ง (ดู Library ตัวอื่น) ซึ่งจะเอามาใช้ทำสิ่งที่ต้องการ คือ การทำให้ภาพค่อยๆ ปรากฎขึ้นมา และค่อยๆ เลือนหายไป ดังตัวอย่างด้านล่างนี้

Functional JavaScript

บังเอิญไปเจอ Blog ของ Oliver Steele ซึ่งเค้าไปทำ Functional JavaScript ไว้ ลองมาดูตัวอย่างที่เค้าทำให้ดูละกัน

map(function(x){return x+1}, [1,2,3])
-> [2,3,4]
 
filter(function(x){return x>2}, [1,2,3,4]]
-> [3,4]
 
some(function(w){return w.length < 3}, 'are there any short words?'.split(' '))
-> false
 
// double the items in a list:
map('*2', [1,2,3])
-> [2, 4, 6]
 
// find just the odd numbers:
filter('%2', [1,2,3,4])
-> [1, 3]
 
// or just the evens:

การใช้ภาษาไทยร่วมกับ RJS

เพิ่ม code ด้านล่างนี้ไว้ใน controllers/application.rb

after_filter :set_charset
 
def set_charset
  content_type = @headers["Content-Type"] || 'text/html'
  if /^text\//.match(content_type)
    @headers["Content-Type"] = "#{content_type}; charset=utf-8"
  end
end