因此,這裏是我的解決方案(類似於約翰·萬斯的回答):
首先去這裏,並得到一個函數來檢測移動瀏覽器。
http://detectmobilebrowsers.com/
他們有很多不同的方式來檢測,如果你是移動的,所以找到一個與你使用的是什麼工作。
你的HTML頁面(僞代碼):
If Mobile Then
<input id="selling-date" type="date" placeholder="YYYY-MM-DD" max="2999-12-31" min="2010-01-01" value="2015-01-01" />
else
<input id="selling-date" type="text" class="date-picker" readonly="readonly" placeholder="YYYY-MM-DD" max="2999-12-31" min="2010-01-01" value="2015-01-01" />
JQuery的:
$(".date-picker").each(function() {
var min = $(this).attr("min");
var max = $(this).attr("max");
$(this).datepicker({
dateFormat: "yy-mm-dd",
minDate: min,
maxDate: max
});
});
這樣你仍然可以使用本機的日期選擇在移動,同時還設置了最小和最大日期無論哪種方式。
非移動領域應爲只讀,因爲如果像iOS版Chrome移動瀏覽器的「請求桌面版」,那麼他們可以圍繞移動檢查得到,你還是要防止鍵盤顯示出來。
但是,如果該字段是隻讀的,它可能會看到一個用戶,他們不能改變字段。您可以通過更改CSS來使其看起來像不是隻讀(即將邊框顏色更改爲黑色),但除非您更改所有輸入標籤的CSS,否則將難以保持外觀一致瀏覽器。
爲了讓我只是將日曆圖像按鈕添加到日期選擇器。只需更改您的JQuery代碼:
$(".date-picker").each(function() {
var min = $(this).attr("min");
var max = $(this).attr("max");
$(this).datepicker({
dateFormat: "yy-mm-dd",
minDate: min,
maxDate: max,
showOn: "both",
buttonImage: "images/calendar.gif",
buttonImageOnly: true,
buttonText: "Select date"
});
});
注意:您必須找到合適的圖像。
是的,它的工作原理。 http://jsbin.com/onelor/ – katspaugh
哼!謝謝!但會是日期選擇器能夠設置選擇的值? –
是的。 Readonly僅供用戶使用,不適用於JavaScript。 –