顯示具有 html5 標籤的文章。 顯示所有文章
顯示具有 html5 標籤的文章。 顯示所有文章

2022-09-29

在 input + datalist 情況下如果確定值的切換是由 datalist 的 option 而來的?

See the Pen Input + datalist + trigger by cheaster43 (@cheaster) on CodePen.

以 codepen 所示,主要是利用 input 的 keydown 事件來進行,真的實際在 input 輸入值時,事件的型式會是 keyboardEvent ,若是利用 datalist 的選項來點選的,仍會觸發 keydown 的事件,只是型式就不是 keyboardEvent 了。

比較能利用的方式是確認事件發生時所帶的資料中有沒有 key 這屬性,如果沒有就是透過 datalist 進行的。

雖然,按理來說應該是在 input 去 listen 值 onchange 的事件就行,我本來一開始的寫法也是如此,但因為實際上我真實的案例會是 datalist 的 option 會因為 input 的值的變動而向 api 進行取值來建立,所以…一開始 onchange 的狀況還算正常,但總是會遇到因為輸入 input 的值的打字數度超過年紀較大的人的動眼觀感,也因如此,有時(還滿常發生)在第一次 api response 塞值前的檢驗有效值就會讓本案的 cp 值下降,故再進行環境

2017-12-17

將 json 檔 get 回來時如何建立為 web api 的 object file 型

最近很專心在 javascript 中…

有一個 case ,它裡面原先提供的 function 中,本來是需要你從前端使用 form file 的方式選擇檔案後,再丟入它提供的 function ,這個 function 會依傳入的 form file 檢查相關的 meta …

但這個 case 有一個東西,它是要經由網路取得的 json 檔,然後丟進這個 function 中來檢查…

所以我假設原 function 是
var checkfile = function ( file ) {
   var filename = file.name;
   var extension = filename.split( '.' ).pop().toLowerCase();
   ....
   ....
}
如果是經由 form file 來傳送的,此 checkfile( form file ),是可以正常執行的…

2014-01-10

doctype在html上是一件很直接感受到麻煩的事…

最近開始使用html5…

在用dreamweaver cs6建立html5的檔時它會由以前的
xhtml 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
改為
<!doctype html>
然後一些tag在html4時會自動倒斜線結尾的,在html5都不需要了…

但就是doctype有點麻煩,因為在html5的<!doctype html>,會在圖片底部自動會有一個間距…在各瀏覽器間都會存在…(至少我使用chrome、firefox、ie 6/7/8/9/10/11都會有)


不過我自己使用過的狀況是…假若你的img沒有包在table中的,那使用「img{vertiical-align:bottom;}」ok…但如果包在table中,那建議用「img{display: block;}」就好…因為前一個似乎沒有反應(我使用的時候)

2013-10-25

如何寫出網頁,寫出一個內容會依照裝置畫面大小而做比例縮放的網頁…(針對行動裝置為主) update(10/25)

最近寫一些網頁,手機用的…
但發現,寫出來的畫面字都很小,但內容明明就沒多少東西,為什麼它不能match到畫面大小上咧…

後來發現,是習慣問題,我習慣寫出來的東西用電腦去看…但現在行動裝置很多,在html結構上也不太一樣,尤其是html5…

現在,只要用行動裝置瀏覽網頁,最好在meta上加上

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;" />
content都算是重點…尤其是inital-scale…

參考資料:http://hahapoem.blogspot.tw/2011/01/blog-post.html

update (10/25)
本來都是如上在使用,但後來自己在用chrome時開了console在看錯誤repost發現…雖然上面在某些程度上是正常執行的,但console會報錯…如下

Viewport argument value "device-width;" for key "width" is invalid, and has been ignored. Note that ';' is not a separator in viewport values. The list should be comma-separated.
Viewport argument value "1.0;" for key "initial-scale" was truncated to its numeric prefix. Note that ';' is not a separator in viewport values. 
The list should be comma-separated. Viewport argument value "1.0;" for key "maximum-scale" was truncated to its numeric prefix. Note that ';' is not a separator in viewport values. 
The list should be comma-separated. Viewport argument value "0;" for key "user-scalable" was truncated to its numeric prefix. Note that ';' is not a separator in viewport values. The list should be comma-separated.
後來找了一下資料才發現,其實在html的meta tag中,分號是代表結束,所以最好改用逗號…所以改成如下

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
參考資料:http://ralphwhitbeck.com/2012/javascript-error-viewport/