小编Chr*_*ahl的帖子

使用正确的HTML将整个<li>作为链接

我知道这已经很多次了,但在我的具体情况下我找不到任何解决方案.

我有一个导航栏,<li>如果你愿意,我希望整个链接"或"可点击".现在只有<a>(和<div>我已经摆弄的)是"可点击的".

我尝试过这种li a {display: inner-block; height: 100%; width: 100%}方法,但结果却很可怕.

源代码可以在这里找到:http://jsfiddle.net/prplxr/BrcZK/

HTML

<!DOCTYPE html>
<html>
    <head>
        <title>asdf</title>
    </head>
    <body>
        <div id="wrapper">
            <div id="menu">
                <div id="innermenu">    
                    <ul id="menulist">       
                        <li class="menuitem"><a href="index.php"><div class="menulink">Lnk1</div></a></li>
                        <li class="menuitem"><a href="index.php"><div class="menulink">Lnk2</div></a></li>
                        <li class="menuitem"><a href="index.php"><div class="menulink">Lnk3</div></a></li>
                        <li class="menuitem"><a href="index.php"><div class="menulink">Lnk4</div></a></li>
                    </ul>
                </div>
            </div>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

有人有一个很好的解决方案吗?

先感谢您!

html css navigation html-lists

16
推荐指数
2
解决办法
5万
查看次数

将事件侦听器添加到多个元素

我现在已经好几个小时了.

我想<select>在页面上为所有s 添加一个事件监听器,到目前为止我已经得到了这段代码:

onload = function(e) {
    sels = document.getElementsByTagName('select');
    for(i=0; i<sels.length; i++) {
        sels[i].addEventListener('change', alert('test!'), false);
    }
}
Run Code Online (Sandbox Code Playgroud)

这只会在加载页面时触发警报,而不是在我更改任何<select>s中的值时触发警报.

我可以在正确的方向上轻推吗?:-)

javascript addeventlistener

11
推荐指数
2
解决办法
4万
查看次数

滚动可见时,colgroup上的CSS背景颜色

所以我有一个页面,可能包含也可能不包含一个或多个大而复杂的表格.使用JQuery,当我将鼠标悬停在表格上时,我会为tr和colgroup添加背景颜色.

问题是,当我有多个表时,页面大于视口(滚动条可见),并且它不会影响第一个表.我真的不知道如何解释它,只需在全屏下运行下面的片段,你就会看到.此外,这似乎不会发生在IE中.

$("table").delegate('td','mouseover mouseleave', function(e) {
  var $table = $(this).closest('table');
  if (e.type == 'mouseover') {
    $(this).parent().addClass("hover");
    $table.children("colgroup").children("col").eq($(this).index()).addClass("hover");
  } else {
    $(this).parent().removeClass("hover");
    $table.children("colgroup").children("col").eq($(this).index()).removeClass("hover");
  };
});
Run Code Online (Sandbox Code Playgroud)
.hover {
  background-color: #ccc;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table style="margin: 60px;" cellpadding="10" cellspacing="0">
  <colgroup>
    <col></col>
    <col></col>
    <col></col>
    <col></col>
    <col></col>
  </colgroup>
  <thead>
    <tr>
      <th>col1</th>
      <th>col2</th>
      <th>col3</th>
      <th>col4</th>
      <th>col5</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>1a</td>
      <td>2a</td>
      <td>3a</td>
      <td>4a</td>
      <td>5a</td>
    </tr>
    <tr>
      <td>1b</td>
      <td>2b</td>
      <td>3b</td>
      <td>4b</td>
      <td>5b</td>
    </tr>
    <tr>
      <td>1c</td>
      <td>2c</td>
      <td>3c</td>
      <td>4c</td>
      <td>5c</td>
    </tr>
    <tr>
      <td>1d</td>
      <td>2d</td>
      <td>3d</td>
      <td>4d</td>
      <td>5d</td> …
Run Code Online (Sandbox Code Playgroud)

html css jquery

5
推荐指数
1
解决办法
159
查看次数