jQueryUI DatePicker on DIVs
by raad
HTML
<script src="http://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<div id='LPdate1' class='calendar' data-dp="datepicker1"></div>
<input id='datepicker1' class='datepicker' data-isshown="false" />
<div id='LPdate2' class='calendar' data-dp="datepicker2"></div>
<input id='datepicker2' class='datepicker' data-isshown="false" />
CSS
.calendar {
background-image: url('http://s15.postimg.org/6rhzg16if/icon_datepicker_128x128.png');
background-size: contain;
height: 40px;
width: 40px;
float: left;
margin-top: -6px;
margin-right: 6px;
opacity: 0.5;
}
.calendar:hover {
opacity:1;
}
input.datepicker {
width: 0 !important;
border: 0;
background-color: transparent;
}
.datepicker {
float: right;
margin-right: 50px;
position: relative;
}
.ui-corner-all {
border-top-left-radius: 5px;
border-top-right-radius: 5px;
}
.ui-datepicker {
width: 216px;
margin: 5px auto 0;
font: 9pt Arial, sans-serif;
-webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
-moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
}
.ui-datepicker a {
text-decoration: none;
}
.ui-datepicker table {
width: 100%;
border-collapse: collapse;
border-spacing: 0;
}
.ui-datepicker-header {
background-color: #333333;
color: #33CCFF;
font-size: 18px;
font-family: calibri;
font-style: italic;
-webkit-box-shadow: inset 0px 1px 1px 0px rgba(250, 250, 250, 2);
-moz-box-shadow: inset 0px 1px 1px 0px rgba(250, 250, 250, .2);
box-shadow: inset 0px 1px 1px 0px rgba(250, 250, 250, .2);
text-shadow: #2E8DEF 0px 0px 5px;
filter: dropshadow(color=#000, offx=1, offy=-1);
line-height: 30px;
border-radius: 5px 5px 0 0;
}
.ui-datepicker-title {
text-align: center;
}
.ui-datepicker-prev, .ui-datepicker-next {
/*background-color: #efefef;*/
display: inline-block;
margin-top: 8px;
width: 30px;
height: 30px;
text-align: center;
cursor: pointer;
line-height: 600%;
overflow: hidden;
opacity: 0.5;
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.ui-datepicker-prev:hover, .ui-datepicker-next:hover {
opacity: 1;
-webkit-filter: drop-shadow(0 0 1px #2E8DEF);
-moz-filter: drop-shadow(0 0 1px...
JavaScript
$.datepicker.setDefaults({
showAnim: 'drop',
showOtherMonths: true,
dateFormat: 'dd MM yy',
dayNamesMin: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
minDate: 0,
maxDate: '+1y',
onSelect: function (dateText) {
selectedDate = dateText;
console.log(selectedDate);
}
});
$(function () {
$('#datepicker1, #datepicker2').datepicker({});
});
$('#LPdate1, #LPdate2').click(function () {
var dpField = '#'+$(this).attr("data-dp");
var isShown = ($(dpField).attr("data-isshown") == 'true');
(isShown == false ? $(dpField).triggerHandler("focus") : $(dpField).trigger("blur"));
$(dpField).attr("data-isshown", !isShown);
});