[英]Calendar Pop-Up not working in Firefox & Chrome
我從互聯網上獲得了這個彈出式日歷,可以使用IE
來運行它。 但是,當我嘗試使用Firefox
或Chrome
,彈出式日歷無法正常工作。
這是<head>
DL calendar.js中的外部js文件位置:
<script src="../script/calendar.js?d6aa97d33d459ea3670056e737c99a3d"
type="text/javascript"></script>
HTML中的代碼:
<input type="text" readonly="readonly" class="blackcopy" name="txtReadyDate" id="txtReadyDate" size="10" maxlength="10" value="">
<input type="button" name="btnStartShipDate" style="width: 30px; height: 19px" value="..."/>
我有此javascript代碼,可觸發按鈕中的click事件。 它與其余代碼放在最后一部分:
<script type="text/javascript">
var sDetector;
var sStop;
calendar.set("btnStartShipDate", "txtReadyDate", "left", 130, -20, document.frmObject.txtReadyDate.value);
function onMouseMove(val) {
if (sStop == 'stop') {
return false;
}
sDetector = val;
}
function sHide() {
if (sStop == 'stop') {
sStop = "";
calendar.hideCalendar()
}
if (sDetector == 'hide') {
calendar.hideCalendar()
sDetector = "";
}
}
</script>
日歷工作時如下所示:
那里有沖突或與Firefox
和Chrome
不兼容的代碼嗎?
我發現了什么。 在calendar.js
的代碼中的某些位置,您將看到如下代碼:
var input = document.getElementById(input_id);
實際上是指此輸入:
<input type="button" name="btnStartShipDate" style="width: 30px; height: 19px" value="..."/>
由於getElementById
引用了一個id
,因此需要將其設置為id
屬性,如下所示:
<input type="button" id="btnStartShipDate" name="btnStartShipDate" style="width: 30px; height: 19px" value="..."/>
事實是,即使input
僅具有name
屬性, IE browse
可以以某種方式解決該問題。 但是對於Firefox
和Chrome
,直到控件中具有id
屬性, getElementById
才起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.