0

我是 JQuery 的新手

这个线程是我旧线程的一半重复

主要问题是我想在鼠标指向的当前项目周围创建一个框,当鼠标离开该项目时,该框将消失。

<script src="Scripts/jquery-1.10.1.min.js" type="text/javascript"></script>

 <link href="StyleSheet.css" rel="stylesheet" type="text/css" />

 <div class="clickable" url="http://www.google.com">
    Google
</div>

<div class="clickable" url="http://www.bing.com">
    Bing
</div>

<script type="text/javascript">
   $("div.clickable").mouseover(function () {
 //        $(this).css("outline-style", "solid");
 //        $(this).css("outline-color", "Navy");
 //        $(this).css("outline-width", "thin");
    $("#div.clickable").each(function () { $(this).removeClass("Selected") });
    $(this).addClass("Selected");
 });
 </script>

<script type="text/javascript">
    $("div.clickable").click(
    function () {
        window.location = $(this).attr("url");
    });
</script>

风格将是

.clickable
{
  cursor:pointer;
  cursor: hand;
}

.Selected
{
  outline-style:solid;
  outline-color:Navy;
  outline-width:thin;
}

然而,当鼠标移过其他项目时,它不起作用。它没有清除前一项的大纲。

4

2 回答 2

3

只需使用 CSS 伪类:hover

演示

.clickable:hover{outline:thin solid navy}
于 2013-07-03T16:56:46.010 回答
2

你可以用纯 CSS 做到这一点:

.clickable:hover{
      outline-style:solid;
      outline-color:Navy;
      outline-width:thin;
}
.clickable
{
      cursor:pointer;
      outline-style:none;
      outline-color:transaprent;
      outline-width:none;
}

不需要js。

于 2013-07-03T16:57:44.703 回答