>웹 프론트엔드 >JS 튜토리얼 >자바스크립트 실용적인 텍스트 체인 프롬프트 상자 effect_text 특수 효과

자바스크립트 실용적인 텍스트 체인 프롬프트 상자 effect_text 특수 효과

WBOY
WBOY원래의
2016-05-16 18:24:08827검색

효과는 기본적으로 다음 기능을 구현해야 합니다.
(1) 기사의 링크 텍스트 위로 마우스를 이동하면 해당 위치에 프롬프트 상자가 팝업되며 프롬프트 상자의 스타일은 CSS에 의해 제어됩니다. 적응력이 뛰어납니다. 프롬프트 상자 중앙을 클릭하면 프롬프트 상자에서 벗어나면 링크가 자동으로 사라집니다.
(2) 링크 텍스트가 있는 경우 프롬프트 상자의 위치를 ​​제어합니다. 링크 텍스트가 텍스트 필드의 왼쪽에 있으면 프롬프트 상자가 오른쪽에 표시되어 텍스트 필드를 벗어나지 않습니다. 반대로 링크 텍스트가 텍스트 필드의 오른쪽에 있으면 프롬프트가 표시됩니다. 상자는 왼쪽에 표시되어야 합니다.
(3) 텍스트 필드에 내용이 많고 링크 텍스트가 브라우저 하단에 있는 경우 프롬프트를 표시하려면 상자가 표시되도록 해서는 안 됩니다. 브라우저 범위, 프롬프트 상자의 위치는 링크 텍스트 위에서 자동으로 조정되어야 합니다.

1.css

코드 복사 코드는 다음과 같습니다:

.main{width:950px; border:#9C3 1px margin:0 auto; ; 줄 높이:25px;글꼴 크기:14px; 위치:상대적;}
span{border:#70bce4 2px solid; 위치:절대값:#FFF; 글꼴 크기:12px; 너비:200px; 디스플레이:없음;}
.cur{color:#900;}

2.js
코드 복사 코드는 다음과 같습니다.

//객체 요소를 가져오는 함수
function $a(id,tag){ var re =(id&&typeof id!="string")?id:document.getElementById(id);if(!tag){return re;}else{return re.getElementsByTagName(tag);}}
함수 팁( ){
//텍스트 필드의 요소 목록 가져오기
var article=$a("article","a")
for(i=0;i//요소를 탐색합니다. "cur" 클래스를 포함하지 않는 요소는 후속 코드를 실행하지 않습니다.
if(article[i].className.indexOf("cur")==- 1) 계속;
article[i].onmouseover=function(e){
//문서 내용의 영향을 받지 않고 브라우저의 표시 영역에서 마우스 포인터의 좌표를 가져옵니다.
var e= e||event;
posX = e.clientX;
posY = e.clientY;//브라우저의 가시 영역 높이를 가져옵니다.
var bodyhe=document.documentElement.clientHeight; 🎜>var parwidth=$a ("article").offsetWidth;
vartipbox=get_nextSibling(this)
var boxlist=$a("article","span")
//설정 텍스트 영역의 스팬 팁 상자
for(j=0;jboxlist[j].style.display="none"
boxlist; [j].innerHTML=" 배경 데이터 입력"
}
//현재 팁 상자 표시 설정
tipbox.style.display="block"
var w=tipbox.offsetWidth- this.offsetWidth;
/*
기사로 ID가 있는 div에는 상대 위치가 추가되어 이미 팁 상자의 상위 항목입니다.
팝업 상자의 표시 위치를 제어합니다. ;
*/
tipbox.style .left=(this.offsetLeft>parwidth/2?this.offsetLeft-w:this.offsetLeft) "px"
tipbox.style.top=(posY 팁박스 .offsetHeight>bodyhe?this.offsetTop-tipbox.offsetHeight :document.all?this.offsetTop 15:this.offsetTop this.offsetHeight) "px"
tipbox.onmouseover=function(){this.style.display= "block";}
tipbox.onmouseout= this.onmouseout=function(){tipbox.style.display="none";}
}
}
}
//가져오기 객체 요소의 다음 레이블 노드;
var x=n.nextSibling
while (x.nodeType!=1){
x=x.nextSibling; 🎜>}
return x;
}


소스 파일 코드 게시에 관심이 있는 친구는 테스트해 볼 수 있습니다. 궁금한 점이 있으면 메시지를 남겨주세요@&@



코드 복사
코드는 다음과 같습니다.




프롬프트 상자 효과

/>




사건이 발생하기 전, 에디슨 첸의 아버지에 대한 루머가 돌았습니다. 본토 배우 후빙(Hu Bing)을 지원하게 되었습니다. 불이 없으면 연기도 없다는 말이 있듯이 두 사람은 함께 식사하고 쇼핑하는 모습이 언론에 포착된 바 있다. 그리고후빙상하이 쌍발포 발사
상하이에서 쌍발포 시작>
상하이에서 쌍발포 시작>
나의 모호한 태도도 이번 사건의 미스터리를 더했습니다. 에디슨 첸의 '누드 사진 스캔들'이 터지기 훨씬 전에 에디슨 첸의 아버지가 본토 배우 후빙을 지지한다는 소문이 돌았습니다. 불이 없으면 연기도 없다는 말이 있듯이 두 사람은 함께 식사하고 쇼핑하는 모습이 언론에 포착된 바 있다. 그리고후빙상하이 쌍발포 발사
상하이에서 쌍발포 시작>
상하이에서 쌍발포 시작>
나의 모호한 태도도 이번 사건의 미스터리를 더했습니다. 에디슨 첸의 '포르노 사진 스캔들'이 터지기 훨씬 전에 에디슨 첸의 아버지가 본토 배우 후빙을 지지한다는 소문이 돌았습니다. 불이 없으면 연기도 없다는 말이 있듯이 두 사람은 함께 식사하고 쇼핑하는 모습이 언론에 포착된 바 있다. 그리고후빙상하이 쌍발포 발사
상하이에서 쌍발포 시작>
상하이에서 쌍발포 시작>
나의 모호한 태도도 이번 사건의 미스터리를 더했습니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.