이 기사에서는 JS의 아름다운 시간 선택 상자 효과에 대해 설명합니다. 다음과 같이 참조에 대해 공유하십시오.
HTML 코드 부품 :
<html> <script language = javaScript src = "dataOne.js"> </script> <table elign = "center"> <td> <td> <td> <body> (1) 선택 날짜 만 선택합니다 <입력 유형 = "text"name = "date"readonly onclick = "setday (this);"> <br/> (2) 텍스트 입력 = "텍스트" onclick = "setDayh (this);"> <br/> (3) 날짜 및 시간 및 분 <입력 유형 = "text"name = "datehm"readonly onclick = "setDayhm (this);"> </body> </td> </tabl> </html>
DataOne.js 코드 :
/*** 사용 방법 : * (1) 전용 날짜 <입력 유형 = "text"name = "date" "date"readonly onclick = "setday (this);"> * (2) 날짜 및 시간 <입력 유형 = "text"name = "dateh"readonly onclick = "setdayh (this);"> * (3) intin inty inty = "text" "date" "hm" "hm" "hm" "hm" "hm. onclick = "setDayhm (this);"> * 매개 변수를 설정하기위한 메소드 * (1) 날짜 분리기 SetDatesPlit (strsplit)를 설정합니다. 기본값은 "-" * (2) 날짜와 시간 사이의 분리기를 setDateTimesplit (strsplit) 사이에 설정합니다. 기본값은 "" * (3) 시간 분리기 settimesplit (strsplit)을 설정합니다. 기본값은 ":" * (4) 분리기를 (1), (2), (3) setSplit (strdatesplit, strdatetimessplit, strtimesplit)에 설정합니다. * (5) 시작 및 종료 연도 SetyearPeriod (intdatebeg, intdateend) * 설명 : * 기본값 반환 날짜 및 시간 형식은 다음과 같습니다. 2005-02-02 08:08 */ //--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- s_tiannet_turn_base = "높이 : 16px; font-size : 9pt; 컬러 : 흰색; 경계 : 0 Solid #CCCCCC; 커서 : 손; 배경색 : #2650A6;"; // 연중 내내, 달 등의 버튼 var s_tiannet_turn = "너비 : 28px;" + s_tiannet_turn_base; // 닫기, 클리어 등 버튼 스타일 var s_tiannet_turn2 = "너비 : 22px;" + s_tiannet_turn_base; // 연중 내내 var s_tiannet_select = "width : 64px; display : none;"; // 월, 시간 및 분의 드롭 다운 상자를 선택하여 var s_tiannet_select2 = "너비 : 46px; 디스플레이 : 없음;"; // 날짜 선택 제어 본문 스타일 var s_tiannet_body = "너비 : 150; 배경색 :#2650a6; 디스플레이 : 없음; z-index : 9998; 위치 : 절대;" + "Border-Left : 1 SOLID #CCCC; 국경-탑 : 1 SOLID #CCCC; BORTHER-RIGHT : 1 SOLID #999999; BORTHER-BOTTOM : 1 SOLID #999999;"; // 하루를 보여주는 TD 스타일 var s_tiannet_day = "너비 : 21px; 높이 : 20px; 배경색 :#d8f0fc; font-size : 10pt;"; // 글꼴 스타일 var s_tiannet_font = "색상 :#ffcc00; font-size : 9pt; cursor : hand;"; // 링크 스타일 var s_tiannet_link = "text-decoration : none; font-size : 9pt; color :#2650a6;"; // Horily Line var s_tiannet_line = "Border-Bottom : 1 Solid #6699cc"; //----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- tiannetYearSt = 1950;//Selectable start year var tiannetYearEnd = 2010; // 선택 가능한 종말 연도 Var TiannetDatenow = New Date (); var tiannetyear = tiannetDatenow.getFelyEar (); // 변수 정의 연도의 초기 값 var tiannetmonth = tiannetDatenow.getMonth ()+1; // 변수 정의 달의 초기 값 var tiannetday = tiannetDatenow.getDate (); var tiannethour = 8; // tiannetDatenow.gethours (); var tiannetminute = 0; // tiannetDatenow.getMinutes (); var tiannetArgday = 새로운 배열 (42); // 날짜를 정의하는 배열 var tiannetDatesPlit = "-"; // 날짜 분리기 var tiannetDateTimesplit = ""; // 날짜 분리기 var tiannettimesplit = ":"; // 시간 분리기 var tiannetoutobject; // 날짜와 시간을받는 객체 var arrtiannethide = new array (); // 숨겨져 있어야 할 레이블 var m_bolshowhour = false; // 시간을 var m_bolshowminute = false; // minds mind var m_amonhead = new array (12); // Gregorian 캘린더 M_AMONHEAD에서 월 최대 일수를 정의합니다 [0] = 31; m_amonhead [1] = 28; m_amonhead [2] = 31; m_amonhead [3] = 30; m_amonhead [4] = 31; m_amonhead [5] = 30; m_amonhead [6] = 31; m_amonhead [7] = 31; m_amonhead [8] = 30; m_amonhead [9] = 31; m_amonhead [10] = 30; m_amonhead [11] = 31; // -------------------------------------------------------------------------///User main call function - select only date function setDay(obj){ tiannetOutObject = obj; // 태그에 값이있는 경우 날짜를 현재 값으로 초기화 var var strvalue = tiannettrim (tiannetoutObject.value); if (strvalue! = "") {tiannetinitdate (strvalue); } tiannetPopCalendar (); } // 사용자 기본 통화 함수 - 날짜 및 시간 기능 setDayh (obj) {tiannetoutobject = obj; m_bolshowhour = true; // 태그에 값이있는 경우 날짜와 시간은 현재 값으로 초기화됩니다. var strvalue = tiannettrim (tiannetoutObject.value); if (strvalue! = "") {tiannetinitdate (strvalue.substring (0,10)); var hour = strvalue.substring (11,13); if (Hour <10) tiannethour = Hour.substring (1,2); } tiannetPopCalendar (); } // 사용자 기본 통화 함수 - 날짜 및 시간 및 분 및 미분 함수 setDayhm (obj) {tiannetoutObject = obj; m_bolshowhour = true; m_bolshowminute = true; // 태그에 값이있는 경우 날짜, 시간 및 분을 현재 값으로 초기화 var strvalue = tiannettrim (tiannetoutobject.value); if (strvalue! = "") {tiannetinitdate (strvalue.substring (0,10)); var time = strvalue.substring (11,16); var arr = time.split (tiannettimessplit); tiannethour = arr [0]; tiannetminute = arr [1]; if (tiannethour <10) tiannethour = tiannethour.substring (1,2); if (tiannetminute <10) tiannetminute = tiannetminute.substring (1,2); } tiannetPopCalendar (); } // 시작 날짜 및 종료 날짜 함수 설정 setyearperiod (intdatebeg, intdateend) {tiannetyearst = intdatebeg; tiannetyearend = intdateend; } // 날짜 분리기를 설정합니다. 기본값은 "-"함수 setDatesPlit (strdatesplit) {tiannetDatesPlit = strdatesPlit입니다. } // 날짜와 시간 사이에 분리기를 설정합니다. 기본값은 ""함수 setDateTimesplit (strdatetimesplit) {tiannetDateTimesplit = strdateTimesplit입니다. } // 시간 분리기를 설정합니다. 기본값은 ":"함수 settimesplit (strtimessplit) {tiannettimesplit = strtimesplit; } // 분리기 함수 설정 setSplit (strdatesplit, strdatetimesplit, strtimesplit) {tiannetDatesPlit (strdatesPlit); tiannetDateTimesplit (strdatetimesplit); tiannettimessplit (strtimessplit); tiannettimessplit (strtimessplit); } // 기본 날짜를 설정합니다. 형식은 다음과 같습니다. yyyy-mm-dd 함수 setDefaultDate (strdate) {tiannetyear = strdate.substring (0,4); tiannetmonth = strdate.substring (5,7); tiannetday = strdate.substring (8,10); } // 기본 시간을 설정합니다. 형식은 다음과 같습니다. tiannetminute = strime.substring (3,5); } // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 스타일 = " '+s_tiannet_body+'"Style = "이 캘린더 선택 제어 컨트롤은 이전 세대의 경험에 따라 Tiannet에 의해 개선됩니다!"> '); document.write ( '<div align = "center"id = "divtiannetDatetext"author = "tiannet"style = "padding-top : 2px;">'); document.write ( '<span id = "tiannetyearhead"author = "tiannet"style = "'+s_tiannet_font+'"'+'onclick = "spanyearcevent ();"> 년 </span>'); document.write ( '<select id = "seltianyear"style = "'+s_tiannet_select+'"author = "tiannet"'+'onchange = "tiannetyear = this.value; tiannetyear (tiannetyear, tiannetmonth); documb 'this.style.display =/'none/'; ">'); for (var i = tiannetyearst; i <= tiannetyearend; i ++) {docum } document.write ( '</select>'); document.write ( '<span id = "tiannetmonthhead"author = "tiannet"style = "'+s_tiannet_font+'"'+'onclick = "spansmonthcevent ();"> Month </span>'); document.write ( '<select id = "seltianmonth"style = "'+s_tiannet_select2+'"author = "tiannet"'+'onchange = "tiannetmonth = this.value; tiannetyear, tiannetmonth, tiannetmonth); document.al.tiannetmonthhead.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.style.display 'this.style.display =/'none/'; ">'); for (var i = 1; i <= 12; i ++) {document.writeln ( '<옵션 값 = "' + i + '">' + i + 'Month </옵션>'); } document.write ( '</select>'); //document.write ( '</div>'); //document.write('<DIV align = "center"id = "divtiannettimetext"author = "tiannet"> '); document.write ( '<span id = "tiannethourhead"author = "tiannet"style = "'+s_tiannet_font+'디스플레이 : none;"'+'onclick = "spanhourcevent ();"> </span>'); document.write ( '<select id = "seltianhour"style = "'+s_tiannet_select2+'디스플레이 : none;"author = "tiannet"' '+'onchange = "tiannethour = this. value; tiannetwritehead (); document.al.al.l.tiannethhead.style.display =/';'+ 'this.style.display =/'none/'; ">'); for (var i = 0; i <= 23; i ++) {document.writeln ( '<옵션 값 = "' + i + '">' + i + 'time </옵션>'); } document.write ( '</select>'); document.write ( '<span id = "tiannetminutehead"author = "tiannet"style = "'+s_tiannet_font+'디스플레이 : none;"'+'onclick = "spanminUteCevent ();"> point </span>'); document.write ( '<select id = "seltianminute"style = "'+s_tiannet_select2+'디스플레이 : none;"author = "tiannet"' '+'onchange = "tiannetminute = this. value; tiannetwritehead (); document.all.tiannetMinutehead.style.display =/'/'+ 'this.style.display =/'none/'; ">'); for (var i = 0; i <= 59; i ++) {document.writeln ( '<옵션 값 = "' + i + '">' + i + 'point </옵션>'); } document.write ( '</select>'); document.write ( '</div>'); // 수평선 문서를 출력합니다. ( '<div style = "'+s_tiannet_line+'"> </div>'); documb document.write ( '<input type = "button"style = "'+s_tiannet_turn+'"value = "year ↑"onclick = "tiannetprevyear ();">'); document.write ( '<input type = "button"style = "'+s_tiannet_turn+'"value = "year ↓"onclick = "tiannetnextyear ();">'); document.write ( '<input type = "button"style = "'+s_tiannet_turn+'"value = "year ↓"onclick = "tiannetnextyear ();">'); document.write ( '<input type = "button"style = "'+s_tiannet_turn+'"value = "month ↑"onclick = "tiannetprevmonth ();">'); document.write ( '<input type = "button"style = "'+s_tiannet_turn+'"value = "month ↓"onclick = "tiannetnextMonth ();">'); document.write ( '</div>'); // 수평선 문서를 출력합니다. ( '<div style = "'+s_tiannet_line+'"> </div>'); document.write ( '<테이블 테두리 = 0 CellSpacing = 0 CellPadding = 0 bgcolor = 흰색 OnSelectStart = "return false">'); document.write ( '<tr style = "back for (var i = 0; i <Weekname.length; i ++) {// output weekday document.write ( '<td align = "center"author = "tiannet">' + weekname [i] + '</td>'); } document.write ( '</tr>'); document.write ( '</table>'); // 출력 일의 선택 Document.Write ( '<테이블 테두리 = 0 CellPacing = 1 CellPadding = 0 BGCOLOR = White OnSelectStart = "return false">'); var n = 0; for (var i = 0; i <5; i ++) {document.write ( '<tr align = center id = "trtiannetday' + i + '">'); for (var j = 0; j <7; j ++) {docum n ++; } document.write ( '<tr align = center id = "trtiannetday5">'); document.write ( '<td align = "center"id = "tdtiannetday35"onclick = "tiannetday = this.innertext; tiannetsetValue (true);"' + 'style = "' + s_tiannet_day + '"> </td>'); document.write ( '<td align = "center"id = "tdtiannetday36"onclick = "tiannetday = this.innertext; tiannetsetValue (true);"' + 'style = "' + s_tiannet_day + '"> </td>'); documb '<a href = "JavaScript : tiannetsetValue (true);" "' + s_tiannet_link + '"> OK </a>' + '</td>'; document.write ( '</tr>'); document.write ( '</table>'); document.write ( '</div>'); //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- spanYearCEvent(){ hideElementsById(new 배열 ( "seltianyear", "tiannetmonthhead"), false); if (m_bolshowhour) HideElementsByid (새 배열 ( "Tiannethourhead"), false); if (m_bolshowminute) HideElementsByid (새 배열 ( "tiannetminutehead"), false); HideElementsByid (새 배열 ( "Tiannetyearhead", "Seltianmonth", "Seltianhour", "Seltianminute"), True); } // Month Span 태그를 클릭하여 함수 SpanMonthcevent () {HideElementsByid (새 배열 ( "SeltianMonth", "TiannetyEarhead"), False); if (m_bolshowhour) HideElementsByid (새 배열 ( "Tiannethourhead"), false); if (m_bolshowminute) HideElementsByid (새 배열 ( "tiannetminutehead"), false); HideElementsBeyid (새 배열 ( "Tiannetmonthhead", "Seltianyear", "Seltianhour", "Seltianminute"), True); } // 시간 스팬 태그 응답 함수 Spanhourcevent () {HideElementsByid (새 배열 ( "tiannetyearhead", "tiannetmonthhead"), false); if (m_bolshowhour) HideElementsByid (새 배열 ( "seltianhour"), false); if (m_bolshowminute) HideElementsByid (새 배열 ( "tiannetminutehead"), false); HideElementsByid (새 배열 ( "Tiannethourhead", "Seltianyear", "Seltianmonth", "Seltianminute"), True); } // 분 범위 스팬 태그 응답 함수를 클릭하십시오. SpanMinUteCevent () {HideElementsById (새 배열 ( "tiannetyearhead", "tiannetmonthhead"), false); if (m_bolshowhour) HideElementsByid (새 배열 ( "Tiannethourhead"), false); if (m_bolshowminute) HideElementsByid (새 배열 ( "seltianminute"), false); HideElementsBeyid (새 배열 ( "TiannetMinutehead", "Seltianyear", "Seltianmonth", "Seltianhour"), True); } // 태그 함수 숨기기 또는 디스플레이 hideElementsById (Arrid, Bolhide) {var strdisplay = ""; if (bolhide) strdisplay = "none"; for (var i = 0; i <arrid.length; i ++) {var obj = document.getElementById (arrid [i]); obj.style.display = strdisplay; }} //----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- if ((Month == 2) && ispinyear (Year)) c ++; 반환 c; } // 현재 날을 재설정합니다. 주로 현재의 날이 연도가 뒤집어 지거나 달이 뒤집힌 달의 최대 날보다 큰 것을 막기 위해. 함수 setRealDayCount () {if (tiannetday> getMonthCount (tiannetyear, tiannetmonth)) {// 현재의 날이 월의 최대 일보다 큰 경우, 월의 최대 일이 취해집니다. tiannetday = getmonthcount (Tiannetyear, tiannetmonth); }} // 단일 자릿수 전에 0을 추가합니다. addzero (value) {if (value <10) {value = "0" + value; } 반환 값; } // 공간 함수 검색 tiannettrim (str) {return str.replace (/(^/s*) | (/s*$)/g, ""); } // 옵션 함수 생성 createOption (objSelect, value, text) {var 옵션 = document.createElement ( "옵션"); 옵션 .value = value; 옵션 .text = 텍스트; objselect.options.add (옵션); } // 전진 연도 기능 tiannetprevyear () {if (tiannetyear> 999 && tiannetyear <10000) {tiannetyear--;} else {alert ( "범위 내 (1000-9999)! // 연도가 허용 연도보다 작은 경우 (tiannetyear <tiannetyearst) {tiannetyearst = tiannetyear; CreateOption (document.all.seltianyear, tiannetyear, tiannetyear + "year"); } CheckSelect (document.all.seltianyear, tiannetyear, tiannetyear); tiannetwritehead (); } // 플립 연도 함수 tiannetnextyear () {if (tiannetyear> 999 && tiannetyear <10000) {tiannetyear ++;} else {alert ( "범위 (1000-9999)!"); return;} tiannetsetday (Tiannetyear, tiannetmonth); // 연도가 허용 연도를 초과하면 해당 옵션을 작성하십시오. CreateOption (document.all.seltianyear, tiannetyear, tiannetyear + "year"); } CheckSelect (document.all.seltianyear, tiannetyear, tiannetyear); tiannetwritehead (); } // 오늘의 선택 기능 tiannettoday () {tiannetyear = tiannetDatenow.getPyear (); tiannetmonth = tiannetDatenow.getMonth ()+1; tiannetday = tiannetDatenow.getDate (); tiannetsetValue (true); // tiannetsetday (Tiannetyear, tiannetmonth); // selectObject (); } // 달의 달을 따르기 기능 tiannetprevmonth () {if (tiannetmonth> 1) {tiannetmonth-} else {tiannetyear-; tiannetmonth = 12;} tiannetsetday (tiannetyear, tiannetmonth); CheckSelect (document.all.seltianmonth, tiannetmonth); tiannetwritehead (); } // 월 함수를 따르십시오 tiannetnextmonth () {if (tiannetmonth == 12) {tiannetyear ++; tiannetmonth = 1} else {tiannetmonth ++} tiannetsetday (tiannetyear, tiannetmonth); CheckSelect (document.all.seltianmonth, tiannetmonth); tiannetwritehead (); } // 연도, 월, 시간, 분 및 기타 데이터 스팬 태그 함수에 쓰기 tiannetwritehead () {document.all.tiannetyearhead.innertext = tiannetyear + "Year"; document.all.tiannetmonthhead.innertext = tiannetmonth + "month"; if (m_bolshowhour) document.all.tiannethourhead.innertext = "" + tiannethour + "time"; if (m_bolshowminute) document.all.l.tiannetminutehead.innerText = tiannetMinute + "mings"; tiannetsetValue (false); // 텍스트 상자에 값을 할당하지만이 컨트롤을 숨기지 않음} // 디스플레이 일을 설정하는 날짜 기능 tiannetsetday (yy, mm) {setRealDayCount (); // 월의 실제 날 TiannetWriteHead (); var strdatefont1 = "", strdatefont2 = ""// 날짜 디스플레이 스타일 (var i = 0; i <37; i ++) {tiannetArgday [i] = ""}; // 디스플레이 상자의 모든 내용을 지우십시오. var day1 = 1; var firstday = 새 날짜 (YY, MM-1,1) .getDay (); // (var i = firstday; day1 <getmonthcount (yy, mm) +1; i ++) {tiannetArgday [i] = day1; day1 ++; } // 하루의 마지막 행을 표시하는 데 사용되는 첫 번째 셀의 값이 비어 있으면 전체 행을 숨 깁니다. // if (tiannetArgday [35] == "") {// document.all.trtiannetday5.style.display = "none"; //} else {// document.all.trtiannetday5.style.display = ""; //} for (var i = 0; i <37; i ++) {var da = vali ( "document.all.l.tdtiannetday"+i) // 새로운 달의 날짜와 주 정리 작성 If (tiannetArgday [i]! = "") {// 주말이든, 주말이든, red 0 || (i+1)) | strdatefont1 = "<font color =#f0000>"strdatefont2 = "</font>"} else {strdatefont1 = ""; strdatefont2 = ""} da.innerhtml = strdatefont1 + tiannetarrday [i] + strdatefont2; // 현재 선택된 날인 경우 (tiannetArgday [i] == tiannetday) {da.style.backgroundcolor = "#cccccc"; } else {da.style.backgroundColor = "#Efef"; } da.style.cursor = "hand"} else {da.innerhtml = "; da.style.backgroundcolor =" "; da.style.cursor ="default "}} // tiannetsetValue (false)에 대한 종료 (false); // 텍스트 상자에 값을 할당하지만이 컨트롤을 숨기지 않지만 종료 기능 tiannetet 옵션 // CheckSelect (objselect, selectValue) {var count = parseint (objselect.length); if (selectValue <10 && selectValue.toString (). length == 2) {selectValue = selectValue.SubString (1,2); } for (var i = 0; i <count; i ++) {if (objselect.options [i] .value == selectValue) {objselect.selectedIndex = i; 부서지다; }} // for} // 드롭 다운 상자 함수를 선택하십시오. selectObject () {// 연도가 허용되는 최소 연도보다 적은 경우 해당 옵션을 작성하십시오. } tiannetyearst = tiannetyear; } // 연도가 허용 연도를 초과하는 경우 (tiannetyear> tiannetyearend) {for (var i = tiannetyearend + 1; i <= tiannetyear; i ++) {createoption (document.al.seltianyear, i, i + "year"). } tiannetyearend = tiannetyear; } CheckSelect (document.all.seltianyear, tiannetyear); CheckSelect (document.all.seltianmonth, tiannetmonth); if (m_bolshowhour) CheckSelect (document.all.seltianhour, tiannethour); if (m_bolshowminute) CheckSelect (document.all.seltianminute, tiannetminute); } // 날짜와 시간을 허용하는 컨트롤에 값을 할당 // 매개 변수 bolhidecontrol -컨트롤 기능을 숨길 것인지 tiannetSetValue (bolhidecontrol) {var value = ""; if (! tiannetday || tiannetday == "") {tiannetoutObject.value = value; 반품; } var mm = tiannetmonth; var day = tiannetday; if (mm <10 && mm.tostring (). length == 1) mm = "0" + mm; if (day <10 && day.toString (). length == 1) day = "0" + Day; value = tiannetyear + tiannetdatesplit + mm + tiannetdatesplit + day; if (m_bolshowhour) {var hour = tiannethour; if (Hour <10 && Hour.toString (). length == 1) Hour = "0" + Hour; value + = tiannetDateTimesplit + 시간; } if (m_bolshowminute) {var minute = tiannetminute; if (minge <10 && minute.tostring (). length == 1) minute = "0" + minute; value + = tiannettimesplit + minute; } tiannetoutObject.value = value; //document.all.divtiannetDate.style.display = "None"; if (bolhidecontrol) {tiannethidecontrol (); }} // 표시 시간 기능 showtime () {if (! m_bolshowhour && m_bolshowminute) {alert ( "분을 선택하려면 시간을 선택할 수 있어야합니다!"); 반품; } HideElementsById (새 배열 ( "Tiannethourhead", "Seltianhour", "TiannetMinutehead", "Seltianminute"), True); if (m_bolshowhour) {// HOURS HIDEELEMENTEMENMENTSBYID (new Array ( "Tiannethourhead"), False); } if (m_bolshowminute) {// Minutes HideElementsByid (새 배열 ( "Tiannethourhead"), False); } if (m_bolshowminute) {// Minutes HideElementsByid (새 배열 ( "tiannetMinutehead"), false); }} // 캘린더 선택 제어 컨트롤은 사용자가 함수를 선택할 수 있도록 팝업됩니다. tiannetpopcalendar () {// 드롭 다운 상자를 숨기려면 해당 헤드 HidelementsByid ( "Seltianyear", "Seltianmonth", "Seltianhour", "SeltianMinute"), true); HideElementsBeyid (새 배열 ( "Tiannetyearhead", "TiannetMonthhead", "TiannetMinutehead"), False); Tiannetsetday (Tiannetyear, Tiannetmonth); tiannetwritehead (); showtime (); var dads = document.all.divtiannetdate.style; var ix, iy; var h = document.all.divtiannetDate.offSetheight; var w = document.all.divtiannetDate.OffSetWidth; // 왼쪽 if (window.event.x + h> docum 그렇지 않으면 ix = Window.event.x + 5; if (ix <0) ix = 0; // 상단 iy = window.event.y를 계산합니다. if (wind else iy = document.body.scrolltop + window.event.y + 5; if (iy <0) iy = 0; Dads.left = ix; Dads.top = iy; tiannetshowcontrol (); selectObject (); } // 캘린더 컨트롤 숨기기 (강제 숨겨진 태그 표시 동시에) 함수 tiannethidecontrol () {docum tiannetshowobject (); arrtiannethide = new array (); // 숨겨진 태그 개체를 지우립니다. tiannethideobject ( "select"); tiannethideobject ( "object"); } // 태그 이름에 따라 태그를 숨 깁니다. 컨트롤의 선택이 차단되면 객체 함수 tiannethideObject (strtagName) {x = document.all.divtiannetDate.OffSetLeft; y = document.all.divtiannetDate.OffSetTop; h = document.all.divtiannetdate.offsetheight; w = document.all.divtiannetDate.OffSetWidth; for (var i = 0; i <document.all.tags (strtagname) .length; i ++) {var obj = document.all.tags (strtagname) [i]; if (! obj ||! obj.offsetparent) 계속; // 바디 태그 var objleft = obj.offsetleft에 대한 요소의 상대 좌표를 가져옵니다. var objtop = obj.offsetTop; var objheight = obj.offsetheight; var objwidth = obj.offsetWidth; var objparent = obj.offsetparent; while (objparent.tagname.touppercase ()! = "body") {objleft += objparent.offsetleft; objtop += objparent.offsetTop; objparent = objparent.offsetparent; } // alert ( "컨트롤의 왼쪽 끝 :" + x + "왼쪽 끝 선택" + (objleft + objwidth) + "컨트롤의 하단 :" + (y + h) + "select high :" + objtop); var bolhide = true; if (obj.style.display == "none"|| obj.style.visibility == "hidden"|| obj.getAttribute ( "author") == "tiannet") {// 태그 자체가 숨겨져 있으면 더 이상 숨겨져있을 필요가 없습니다. 컨트롤의 드롭 다운 상자 인 경우 숨길 필요가 없습니다. bolhide = false; } if (((objleft + objwidth)> x && (y + h + 20)> objtop && (objtop + objheight)> y && objleft <(x + w)) && bolhide) {//arrtiannethide.push (obj) ;//record tag obj. obj.style.visibility = "숨겨진"; }}} // 숨겨진 태그 함수 표시 tiannetshowObject () {for (var i = 0; i <arrtiannethide.length; i ++) {// alert (arrtiannethide [i]); Arrtiannethide [i] .style.visibility = ""; }} // 초기화 날짜. 함수 tiannetInitDate (strdate) {var arr = strdate.split (tiannetDatesPlit); tiannetyear = arr [0]; tiannetmonth = arr [1]; tiannetday = arr [2]; } // clear function tiannetClear () {tiannetoutObject.value = ""; tiannethidecontrol (); } // 함수 문서를 클릭 할 때 컨트롤을 닫으십시오. }} // ESC 키를 눌러 제어 기능 문서를 닫습니다 .OnKeypress () {if (event.keyCode == 27) {TiannetHideControl (); }}JavaScript 관련 콘텐츠에 대한 자세한 내용은이 사이트의 주제를 확인하십시오. "JavaScript의 JSON 운영 기술 요약", "JavaScript Switching 효과 및 기술 요약", "JavaScript 검색 알고리즘 기술 요약", "Javascript 특수 효과 및 기술 요약", Javascript 오류 및 Debagging Skills의 요약 ","Javascript Skills ","Javascript Skills " 알고리즘 기술 ","JavaScript Traversal 알고리즘 및 기술의 요약 "및"JavaScript 수학 연산 사용 요약 "
이 기사가 모든 사람의 JavaScript 프로그래밍에 도움이되기를 바랍니다.