亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > AJAX > 正文

用ajax實現預覽鏈接可以看到鏈接的內容

2024-09-01 08:32:50
字體:
來源:轉載
供稿:網友
用CSS設置預覽彈出窗口的樣式、用JavaScript進行服務器請求并且顯示彈出窗口,需要的朋友可以參考下
 
 

首先先看實現代碼

html代碼部分

<!DOCTYPE html><html><head><title>Previewing Links</title><link rel="stylesheet"href="script05.css" rel="external nofollow" ><script src="script05.js"></script></head><body><h2>A Gentle Introduction to JavaScript</h2><ul><li><a href="jsintro/2000-08.html" rel="external nofollow" >August column</a></li><li><a href="jsintro/2000-09.html" rel="external nofollow" >September column</a></li><li><a href="jsintro/2000-10.html" rel="external nofollow" >October column</a></li><li><a href="jsintro/2000-11.html" rel="external nofollow" >November column</a></li></ul><div id="previewWin"> </div></body></html>

這個CSS設置預覽彈出窗口的樣式

#previewWin {background-color: #FF9;width: 400px;height: 100px;font: .8em arial, helvetica, sans-serif;padding: 5px;position: absolute;visibility: hidden;top: 10px;left: 10px;border: 1px #CC0 solid;clip: auto;overflow: hidden;}#previewWin h1, #previewWin h2 {font-size: 1.0em;}

這個JavaScript進行服務器請求并且顯示彈出窗口

window.onload = initAll;var xhr = false;var xPos, yPos;function initAll() {var allLinks = document.getElementsByTagName("a");for (var i=0; i< allLinks.length; i++) {allLinks[i].onmouseover = getPreview;}}function getPreview(evt) {if (evt) {var url = evt.target;}else {evt = window.event;var url = evt.srcElement;}xPos = parseInt(evt.clientX);yPos = parseInt(evt.clientY);if (window.XMLHttpRequest) {xhr = new XMLHttpRequest();}else {if (window.ActiveXObject) {try {xhr = new ActiveXObject("Microsoft.XMLHTTP");}catch (e) { }}}if (xhr) {xhr.onreadystatechange = showContents;xhr.open("GET", url, true);xhr.send(null);}else {alert("Sorry, but I couldn't create an XMLHttpRequest");}}function hidePreview() {document.getElementById("previewWin").style.visibility = "hidden";}function showContents() {var prevWin = document.getElementById("previewWin");if (xhr.readyState == 4) {if (xhr.status == 200) {prevWin.innerHTML = xhr.responseText;}else {prevWin.innerHTML = "There was a problem with the request " + xhr.status;}prevWin.style.top = yPos+2 + "px";prevWin.style.left = xPos+2 + "px";prevWin.style.visibility = "visible";prevWin.onmouseout = hidePreview;}}

分析:

1. 

var allLinks = document.getElementsByTagName("a");for (var i=0; i< allLinks.length;i++) {allLinks[i].onmouseover = getPreview;}

這是initAll()函數的內容,它遍歷頁面上的所有鏈接,并且在每個鏈接上添加onmouseover事件
處理程序。這個事件處理程序將(你下面將看到的)讀取目標頁面并且向(可能的)訪問者顯示預覽。
2.

if (evt) {var url = evt.target;}else {evt = window.event;var url = evt.srcElement;}xPos = parseInt(evt.clientX);yPos = parseInt(evt.clientY);

在getPreview()中,首先需要查明要讀取哪個文件,這就要查看事件的屬性。根據訪問者使用的
瀏覽器不同,URL保存在evt.target或window.event.srcElement中。獲得了URL之后,就可以獲得
鼠標的x和y位置供以后使用。

3.

function hidePreview() {document.getElementById ("previewWin").style.visibility = "hidden";}

如果打算顯示預覽,將需要再次隱藏它,對嗎?hidePreview()函數的作用是將預覽窗口的可見性
重新設置為隱藏。
4.
var prevWin = document.getElementById("previewWin");
if (xhr.readyState == 4) {
使用Ajax讀取文件之后,現在進入了showContents()函數。我們將previewWin元素存儲在prevWin
中以備后用。當xhr.readyState為4時,就該顯示預覽了。
5.

if (xhr.status == 200) {prevWin.innerHTML = xhr.responseText;}else {prevWin.innerHTML = "There was a problem with the request " + xhr.status;}prevWin.style.top = yPos+2 + "px";prevWin.style.left = xPos+2 +"px";prevWin.style.visibility ="visible";prevWin.onmouseout = hidePreview;

如果一切正常,那么xhr.status為200,而且我們希望放在prevWin.innerHTML中的數據已經存
在于xhr.responseText中了。如果出現了問題,就在prevWin.innerHTML中放一個錯誤消息。
在此之后,需要查明要在哪里顯示預覽窗口,也就是當前的鼠標x和y坐標。這個窗口是一個彈
出窗口,所以將它放在觸發該調用的當前鼠標位置向下和向右一點兒的地方(向下和向右各2像素)。
最后,將prevWin設置為可見,并且讓JavaScript知道,當鼠標離開預覽窗口時,應該隱藏prevWin。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲精品美女久久久久| 亚洲精品有码在线| 在线成人中文字幕| 两个人的视频www国产精品| 一本色道久久综合狠狠躁篇怎么玩| 亚洲91精品在线观看| 久久亚洲精品中文字幕冲田杏梨| 国产成人精彩在线视频九色| 亚洲综合国产精品| 久色乳综合思思在线视频| 国产一区二区久久精品| 午夜剧场成人观在线视频免费观看| 欧美激情欧美狂野欧美精品| 亚洲欧美国内爽妇网| 国产日韩欧美视频在线| 色先锋久久影院av| 久久999免费视频| 中文国产成人精品久久一| 欧美日韩加勒比精品一区| 国产精品亚洲美女av网站| 中文字幕久热精品在线视频| 黄色成人在线播放| 日韩视频在线一区| 欧美日本高清视频| 久久精品久久久久久| 色噜噜狠狠狠综合曰曰曰| 日本精品中文字幕| 成人性生交大片免费看小说| 国产精品日韩电影| 亚洲国产成人精品电影| 91av在线播放视频| 久久久久久国产三级电影| 国产精品专区第二| 97精品欧美一区二区三区| 日韩精品视频在线观看网址| 成人中文字幕+乱码+中文字幕| 日本免费在线精品| 国产精品美女免费| 国产精品视频免费在线观看| 伊人成人开心激情综合网| 亚洲一区二区三区在线视频| 性欧美长视频免费观看不卡| 国产精品免费在线免费| 日韩在线一区二区三区免费视频| 国产91热爆ts人妖在线| 国产最新精品视频| 日韩av网站导航| 国模视频一区二区三区| 91免费国产网站| 狠狠躁天天躁日日躁欧美| 黄网动漫久久久| 亚洲精美色品网站| 精品露脸国产偷人在视频| 亚洲天堂av在线播放| 久久精品国产一区| 97视频在线观看免费高清完整版在线观看| 久久的精品视频| 色噜噜狠狠狠综合曰曰曰| 国产精品亚洲综合天堂夜夜| 亚洲最新在线视频| 欧美日韩午夜剧场| 欧美丝袜一区二区| www.欧美精品| 久久久久久国产精品三级玉女聊斋| 最近2019好看的中文字幕免费| 久久久这里只有精品视频| 欧美日韩在线观看视频小说| 2025国产精品视频| 91地址最新发布| 成人做爰www免费看视频网站| 亚洲www视频| 亚洲精品黄网在线观看| 亚洲专区在线视频| 欧美性猛交xxxx免费看久久久| 亚洲白拍色综合图区| 欧美壮男野外gaytube| 久久久久久国产精品美女| 亚洲视频在线观看| 国产精品久久久久久亚洲影视| 国产欧美在线播放| 亚洲裸体xxxx| 97在线免费观看| 久久久久这里只有精品| 日韩中文字在线| 亚洲第一精品夜夜躁人人躁| 57pao国产精品一区| 欧美日韩成人精品| 亚州av一区二区| 在线视频日本亚洲性| 国产亚洲xxx| 欧美在线视频一区| 欧美精品激情在线观看| 日韩精品中文字幕有码专区| 国产精品99导航| 91在线免费观看网站| 成人性生交xxxxx网站| 动漫精品一区二区| 亚洲色图校园春色| 日韩免费黄色av| 在线观看视频99| 88xx成人精品| 欧美超级免费视 在线| 少妇久久久久久| 美女国内精品自产拍在线播放| 欧美一级成年大片在线观看| 2019中文字幕在线免费观看| 国产精品精品视频一区二区三区| 亚洲欧美日韩国产中文专区| 久久久国产91| 超碰精品一区二区三区乱码| 国产91在线播放精品91| 欧美成年人视频网站欧美| 一区二区三区美女xx视频| 日韩高清有码在线| 欧美日韩亚洲成人| 欧美日韩国产成人高清视频| 日韩精品视频免费专区在线播放| 欧美精品久久一区二区| 午夜精品蜜臀一区二区三区免费| 欧美日韩ab片| 精品国产电影一区| 亚洲人在线视频| 日本久久精品视频| 在线日韩中文字幕| 国产精品成人一区二区三区吃奶| 亚洲aⅴ日韩av电影在线观看| 在线成人激情黄色| 一本色道久久88综合日韩精品| 成人免费高清完整版在线观看| 欧美日韩午夜视频在线观看| 日韩精品极品毛片系列视频| 国产日韩欧美黄色| 97在线日本国产| 国产精品视频免费观看www| 欧美猛男性生活免费| 国产精品成熟老女人| 欧美中文在线免费| 日本在线观看天堂男亚洲| 日韩在线中文字幕| 欧美性xxxx在线播放| 日韩精品在线观看一区| 性欧美亚洲xxxx乳在线观看| 国产精品444| 日本韩国欧美精品大片卡二| 97视频免费看| 国产va免费精品高清在线| 亚洲精品国产品国语在线| 中文字幕一精品亚洲无线一区| 亚洲精品91美女久久久久久久| 欧美亚洲另类视频| 亚洲综合大片69999| 在线日韩第一页| 亚洲理论片在线观看| 国内精品视频久久| 91在线精品播放| 精品国偷自产在线视频99| 欧美在线一级va免费观看| 清纯唯美亚洲激情| 中文字幕日韩在线播放| 亚洲精品欧美日韩| 国内精品视频一区| 在线精品91av| 国产69久久精品成人看| 国产精品嫩草视频|