在屏幕中央显示jQuery的日期选择器
Displaying jQuery's Datepicker in the center of the screen
这是默认生成的代码
<div id="ui-datepicker-div" class="ui-datepicker
ui-widget ui-widget-content ui-helper- clearfix ui-corner-all
ui-datepicker-multi ui-datepicker-multi-2" style="width: 34em;
position: absolute; left: 349px; top: 453px; z-index: 1; display: block; ">
这样做的问题是日期选择器显示在触发器输入旁边,而不是我想要的中心。
您可以在此处查看演示站点:http://enniakiosk.spin-demo.com/travelers.php
有谁知道如何使用 javascript 将.ui-datepicker
类居中?显然,CSS 不起作用。
如果您使用的是 .dialog
方法,它接受一个参数,pos
该参数是您希望对话框显示的位置的坐标(上/左)的[x, y]
数组。
此解决方案要求您计算顶部和左侧值,以便对话框在页面上居中显示。这取决于盒子的大小和视口的大小,您可以通过 $(window).height()
和 $(window).width()
来确定。您必须即时生成此内容。
一种快速而肮脏的方式来完成你想要的事情可以通过CSS来完成。您可以直接覆盖 jquery UI 样式,也可以将一些样式添加到您自己的样式表中。这依赖于使用"!important",但它有效,并且您没有深入研究 UI 代码。
以下是您可以添加到您自己的样式表中的内容。您需要使用要生成的日期选取器的大小。这是我只是使用通用演示的大小。
#ui-datepicker-div {
position: absolute !important;
left: 50% !important;
top: 50% !important;
margin-left: -96px; /* approx half the height of the datepicker div - adjust based on your size */
margin-top: -73px; /* half the height of the datepicker div - adjust based on your size */
}
在 CSS 中使用"!important"是一个应该避免的拐杖,但只是展示它是如何做到的......
相关文章:
- jquery日期选择器年份范围默认值
- jquery日期选择器失去了交互性
- 正在搜索JavaScript日期选择器滑块
- 如何在多个jQueryUI日期选择器中屏蔽特定日期
- jquery日期选择器显示与值不同的文本
- JQuery UI日期选择器:在选择出发日期时自动弹出返回日期
- Angular UI启动日期选择器问题
- 奇怪的日期选择器行为,与模糊有关
- 我希望这个日期选择器可以从1990年到2000年之间的年份中选择日期
- keith wood日期选择器日期格式和语言
- 在日期更改后更新Angular UI引导程序日期选择器选项
- Jquery UI日期选择器不关注输入
- Javascript两个日期选择器冲突
- 动态添加的标记不会'无法正确使用日期选择器
- 日期选择器无法使用javascript显示
- AngularJS自定义日期选择器指令
- 他们网站上的代码出现启动日期选择器错误
- 从第一个日期选择器定义第二个日期选择器的开始日期
- 更改日期选择器格式
- 带有推特助推器的日期选择器出现了,但没有't更改日期