맹훈
267
2019-04-05 13:57:39
0
106

[EDGE]브라우저 내 컨트롤F기능


안녕하세요


브라우저 내 Ctrl+F를 눌러 텍스트 검색을 하는 기능을 javascript로 구현해보고 싶어져서 

기존에 누군가가 구현해놓은 소스를 가져다 써봤습니다.


아래 스크립트구문인데 edge로 넘어가면서 IE쪽 'findText'기능이 Edge에서는 사라진것 같더라구요 

혹시 이런 기능을 어떻게 구현해야 하는지 아신다면 답변좀 부탁드립니다!



		var TRange = null;
		function findString() {
			
			var str = document.getElementById("t1").value;
			
			if(str =='')
				return false;
			
			if (parseInt(navigator.appVersion) < 4)
				return;
			
			var strFound;
			 
			var agent = navigator.userAgent.toLowerCase();
			//edge 
			if (  (agent.indexOf("edge") != -1) ) {
				//구현이 필요한 부분
				
			}
			//IE 
			else if (  (navigator.appName == 'Netscape' && navigator.userAgent.search('Trident') != -1) || (agent.indexOf("msie") != -1)  ) {
				if (TRange != null) {
					TRange.collapse(false);
					strFound = TRange.findText(str);
					if (strFound)
						TRange.select();
				}
				if (TRange == null || strFound == 0) {
					TRange = window.document.body.createTextRange();
					console.log(TRange);
					strFound = TRange.findText(str);
					if (strFound)
						TRange.select();
				}
			
			}else  {
			//Chrome
				strFound = window.find(str);
				if (!strFound) {
					strFound = window.find(str, 0, 1);
					while (window.find(str, 0, 1))
						continue;
				}

			}
			if (!strFound)
				alert("String '" + str + "' not found!");
			
			
			return false;
		}


0
0
  • 답변 0

  • 로그인을 하시면 답변을 등록할 수 있습니다.