Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript A href在我自己的工具提示中_Javascript_Jquery_Html_Css_Tooltip - Fatal编程技术网

Javascript A href在我自己的工具提示中

Javascript A href在我自己的工具提示中,javascript,jquery,html,css,tooltip,Javascript,Jquery,Html,Css,Tooltip,我创建了自己的工具提示,是1个全屏div.over-bg和1个位于屏幕中间的小divdiv.over-box: <div class="over-bg" id="over-hat"> <div class="over-box"> <a href="">link</a> </div> </div> 一切都很完美,但当我在div.over-box中有一个链接时,它就不起作用了。我

我创建了自己的工具提示,是1个全屏
div.over-bg
和1个位于屏幕中间的小div
div.over-box

<div class="over-bg" id="over-hat">
    <div class="over-box">        
        <a href="">link</a>
    </div>
</div>

一切都很完美,但当我在
div.over-box
中有一个链接时,它就不起作用了。我想做的是,工具提示只有在我们点击外部时才会关闭。但链接必须起作用。有什么想法吗?

除了您已有的JQuery语句之外,尝试添加此JQuery语句:

$('#over-hat .over-box a').click(function(){
    window.location = $(this).attr('href');
});

我只是在这里假设一下,但听起来好像你想要
.over bg
在点击链接时淡出。如果是这样的话,您必须为锚自身设置另一个单击处理程序,因为我认为锚的默认行为是不使其事件冒泡


看看这把小提琴

将第二个代码段更改为以下内容:

$('#over-hat .over-box').click(function(e){
   return($(e.target).prop("tagName")=="A");
});

这将有助于
a
标记执行其默认操作,并使其他标记忽略该事件。

您的链接没有
href
属性,因此单击它将无效-假设您的HTML示例未演示。是否有CSS?请粘贴它我相信如果你设置的zindex of over box高于over bg点击函数将不会被调用。提供的代码不是OP所说的“一切都很完美”请在JSFIDLE上发布你的全部示例代码这是一个不错的解决方案,但我需要一些通用的ID按钮和标签,这将启动AJAX等@Zaszczyk-您可以使用此建议,只需修改return语句即可测试您可能需要单击的所有情况(即:按钮、链接等)
$('#over-hat .over-box').click(function(e){
   return($(e.target).prop("tagName")=="A");
});