如何禁用Microsoft Edge中的日期选择器?
How do you disable the datepicker in Microsoft Edge?
我有几个输入type="date"并希望禁用默认日期选择器在微软边缘,因为我使用jQuery的日期选择器。如何使用CSS或JavaScript禁用此功能?它在Chrome和Firefox中运行良好,但在Edge中不行。
一个工作的JSFiddle
HTML<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js"></script>
<input type="date">
JS
$(document).ready(function() {
if (!Modernizr.inputtypes.date || $(window).width() >= 900) {
$('input[type=date]').datepicker();
}
});
$(window).resize(function() {
if (!Modernizr.inputtypes.date || $(window).width() >= 900) {
$('input[type=date]').datepicker();
}
else {
$('input[type=date]').datepicker("destroy");
}
});
CSS input[type=date]::-webkit-inner-spin-button, input[type=date]::-webkit-calendar-picker-indicator {
display: none;
-webkit-appearance: none;
}
不可能在Edge中禁用本机日期选择器控制功能(尽管Chrome可以通过黑客)-然而无论如何
输入控件,除非是由浏览器设计的,一般都是基于系统控件。这意味着输入数据拾取器是输入数据拾取器,select
下拉列表是select
下拉列表。
除了基本的样式(如边框、填充和字体样式)和html标准属性(如placeholder
)之外,大多数控件在自定义方面受到限制。
你有几个选择:
保持默认的日期选择器控件不变
这是我推荐的选项。坚持使用默认的系统控件(在适用的情况下使用样式)通常是最好的策略。这确保了最大的设备兼容性和用户的熟悉度。此外,一切正常"正常工作"。
在你的JS代码中也有更少的开销。
邪恶选项:浏览器检测
你可以在JS代码中检测浏览器是否为Edge,然后告诉它渲染jQuery控件。除非你真的需要,否则你应该避免这样做,因为浏览器检测很快就会过时,而且会成为维护的噩梦。
输入类型必须是文本而不是日期。这个…
<input type="date" />
应该<input type="text" />
否则Chrome和Edge将添加日期选择器。相反,使用类或id将其标识为日期拾取器,并执行$(".datepicker").datepicker();
与Cyptic一样,我必须将类型更改为text
<input type="text" class="datepicker"/>
然后在JQuery
$("input.datepicker:text").datepicker({
showOn: "both",
dateFormat: "dd MM yy",
changeMonth: true,
changeYear: true
});
相关文章:
- jquery日期选择器年份范围默认值
- jquery日期选择器失去了交互性
- 正在搜索JavaScript日期选择器滑块
- 如何在多个jQueryUI日期选择器中屏蔽特定日期
- jquery日期选择器显示与值不同的文本
- JQuery UI日期选择器:在选择出发日期时自动弹出返回日期
- Angular UI启动日期选择器问题
- 奇怪的日期选择器行为,与模糊有关
- 我希望这个日期选择器可以从1990年到2000年之间的年份中选择日期
- keith wood日期选择器日期格式和语言
- 在日期更改后更新Angular UI引导程序日期选择器选项
- Jquery UI日期选择器不关注输入
- Javascript两个日期选择器冲突
- 动态添加的标记不会'无法正确使用日期选择器
- 日期选择器无法使用javascript显示
- AngularJS自定义日期选择器指令
- 他们网站上的代码出现启动日期选择器错误
- 从第一个日期选择器定义第二个日期选择器的开始日期
- 更改日期选择器格式
- 带有推特助推器的日期选择器出现了,但没有't更改日期