问题:返回的 html 中的锚标记文本在 Firefox 中不可点击(没有“手形光标”,也没有操作)。IE 10 似乎处理得很好。
设置:使用 jQuery AJAX 调用抓取 html 内容的 php 页面,然后将其返回到浏览页面中 id="slideShowC" 的 div。数据类型=html。当我提醒返回的 html 时,它与被调用的页面相同。
阿贾克斯:
function populateContent(i,w,h){
var url = "slideshow.php?ss="+ssContent[i]+"&i="+i+"&width="+w+"&height="+h;
$.ajax({
type: "GET",
url: url,
async: true,
dataType: 'html',
success: function(data) {
$('#slideShowC').html(data);
},
error: function (){
//alert("error: " + url);
}
});
return true;
}
html 正确显示。颜色和文本是正确的,甚至超链接文本的颜色看起来也正确,为蓝色,带有下划线。你可以看到它是一个超链接。但是使用 Firefox,当我将鼠标悬停在链接文本上时,光标不会改变以指示文本是超链接的。
这是从远程页面(相同域,相同站点文件夹)返回的示例 html 块:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SlideShow 1</title>
<style> body{ margin:0; }
.ssBox{
background-color:#CCC;
color:#000;
width:280px;
height:280px;
padding:10px;
}
.ssBox h1{
margin:0px;
}
</style>
</head>
<body>
<div class="ssBox">
<h1>The Technology</h1>
<p>See the <a href="technology.php">technology</a>.</p>
</div>
</body>
</html>
该链接位于底部的第四行。它可以很好地呈现到 html div 容器中,但就像我说的,它在 Firefox 中不可点击。我没有看到明显的东西吗?我是否遗漏了一些重要信息?
重要更新:正如我在下面的评论中提到的,我认为我的问题与 javascript、jQuery、AJAX 等无关。当我在主页中硬编码 html 时,链接仍然不可点击:
<div id="slideShowC" class="textBox" ><?php include("html/slideshow/slidecontent1.html"); ?></div>
我将不得不研究页面 html / stylesheet 以了解发生了什么。
更新:Blither and Blah!根据 twil 的回复,我有一个透明的“面具”div 覆盖了文本 div。我删除了掩码 div,瞧,一切正常。如果我的问题有任何可取之处,那就是我不得不问它以获得一些好的指示,以寻找另一个方向。谢谢大家。