jQueryAjax返回的HTML数据锚标记在Firefox中不可单击
问题:返回的html中的锚定标记文本在Firefox中不可单击(没有“手动光标”,也没有操作)。IE 10似乎处理得很好 设置:使用jQuery AJAX调用获取html内容的php页面,然后将其返回到浏览页面中id=“slideShowC”的div。数据类型=html。当我提醒返回的html时,它与被调用的页面相同 AJAX:jQueryAjax返回的HTML数据锚标记在Firefox中不可单击,jquery,html,ajax,hyperlink,anchor,Jquery,Html,Ajax,Hyperlink,Anchor,问题:返回的html中的锚定标记文本在Firefox中不可单击(没有“手动光标”,也没有操作)。IE 10似乎处理得很好 设置:使用jQuery AJAX调用获取html内容的php页面,然后将其返回到浏览页面中id=“slideShowC”的div。数据类型=html。当我提醒返回的html时,它与被调用的页面相同 AJAX: function populateContent(i,w,h){ var url = "slideshow.php?ss="+ssContent[i]+"&am
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区块:
幻灯片1
正文{页边距:0;}
.ssBox{
背景色:#CCC;
颜色:#000;
宽度:280px;
高度:280px;
填充:10px;
}
.ssBox h1{
边际:0px;
}
技术
看
链接位于底部的第四行。它可以很好地呈现到HTMLdiv容器中,但正如我所说的,它在Firefox中是不可点击的。难道我没有看到什么明显的东西吗?我是否遗漏了一些重要信息
重要更新:
正如我在下面的评论中提到的,我认为我的问题与javascript、jQuery、AJAX等无关。当我在主页中硬编码html时,链接仍然无法点击:
<div id="slideShowC" class="textBox" ><?php include("html/slideshow/slidecontent1.html"); ?></div>
我将不得不研究页面html/样式表,看看发生了什么
更新:
胡说八道!根据twil的回复,我有一个透明的“mask”div覆盖文本div。我移除了mask div,瞧,一切都正常。如果说我的问题有什么可取之处的话,那就是我必须问它,以获得一些好的指示,从而朝着另一个方向看。谢谢大家。问题与javascript、jQuery或AJAX无关。发生的事情是,我有一个透明的“mask”div覆盖了我的slideShowC div,所以我的html输出层被一个透明层覆盖。一旦我移除了透明层,链接当然就可以点击了
仍然奇怪的是IE让我点击div层。但是,在这一点上并不重要。问题与javascript、jQuery或AJAX无关。发生的事情是,我有一个透明的“mask”div覆盖了我的slideShowC div,所以我的html输出层被一个透明层覆盖。一旦我移除了透明层,链接当然就可以点击了
仍然奇怪的是IE让我点击div层。但是,啊,在这一点上并不重要。请解释清楚??您的页面设置(包含
#slideShowC
的页面)是如何设置的?我曾经有过类似的问题。检查结果HTML我发现我加载的ajax内容被其他容器的透明部分覆盖了。你检查过Firefox以外的其他浏览器吗?如何尝试这样添加HTML:success:function(data){$('#slideShowC')。append(data);},
这可能会解决@twil所说的问题。好东西,做得好。请解释清楚??您的页面设置(包含#slideShowC
)如何?我曾经有过类似的问题。检查结果HTML我发现我加载的ajax内容被其他容器的透明部分覆盖了。你检查过Firefox以外的其他浏览器吗?如何尝试这样添加HTML:success:function(data){$('#slideShowC')。append(data);},
这也许能解决@twil所说的问题。好东西,干得好。
<div id="slideShowC" class="textBox" ><?php include("html/slideshow/slidecontent1.html"); ?></div>