В document.ready вы должны инициализировать указатель даты, просто используйте этот
$("#datetimepicker ").datepicker({
dateFormat: 'd-M-yy'
});
, и он автоматически покажет календарь, когда вы нажмете на тип ввода
I think you still need to call document.createEventObject -- you only checked that it's there. Untested code follows, but based on the docs it should work.
function fireEvent(obj,evt){
var fireOnThis = obj;
if( document.createEvent ) {
var evObj = document.createEvent('MouseEvents');
evObj.initEvent( evt, true, false );
fireOnThis.dispatchEvent( evObj );
} else if( document.createEventObject ) {
var evObj = document.createEventObject();
fireOnThis.fireEvent( 'on' + evt, evObj );
}
}
Сначала у меня это не сработало, а потом я увидел, что в коде отсутствует параметр для части IE. Вот обновление, которое должно работать:
function fireEvent(obj, evt) {
var fireOnThis = obj;
if (document.createEvent) {
// alert("FF");
var evtObj = document.createEvent('MouseEvents');
evtObj.initEvent(evt, true, false);
fireOnThis.dispatchEvent(evtObj);
}
else if (document.createEventObject) {
// alert("IE");
var evtObj = document.createEventObject();
fireOnThis.fireEvent('on'+evt, evtObj);
}
}
Если вы хотите имитировать щелчки только для ссылок , вы можете использовать это:
function clickLink(id){
location.href=document.getElementById(id).href;
}
Мы нашли более простой способ имитации правого клика (проверено в IE8). Используйте двойной щелчок или два одинарных щелчка, затем щелкните правой кнопкой мыши, используя Shift-F10. Я не знаю точно, почему это работает, но это работает. В приведенном ниже примере кода мы используем метод Selenium для двойного щелчка, затем с помощью драйвера IE находим WebElement и отправляем последовательность клавиш Shift-F10, которая эмулирует щелчок правой кнопки мыши. Мы используем это для тестирования веб-приложений на базе GWT. Одно место, где это не сработало так хорошо, было в древовидном элементе управления, где контекстное меню было настроено на появление по координатам мыши. Часто координаты мыши были отрицательными, поэтому щелчок правой кнопкой мыши на пункте меню не приводил к отображению дочерних пунктов меню. Чтобы справиться с этим случаем, мы добавили в элемент управления немного кода, чтобы при отрицательных координатах мыши контекстное меню появлялось в точке 0,0.
selenium.click("//td[@role='menuitem' and contains(text(), 'Add')]");
selenium.click("//td[@role='menuitem' and contains(text(), 'Add')]");
new InternetExplorerDriver().findElement(By.xpath("//td[@role='menuitem' and contains(text(), 'Add')]")).sendKeys(Keys.SHIFT, Keys.F10);