0

タスクは、テーブル内のどのtdにもフォーカスが見つからない場合にアクションを実行することです。テーブル レイアウトはjquery 変数に保存され、そのレイアウトは次のようになります。

<table class="cal_tbl" cellSpacing="1" cellPadding="3">  <tbody>
<tr>
  <td class="cal_head">&lt;&lt;</td>
  <td class="cal_head">&lt;</td>
  <td class="cal_head" colSpan="3">November 2012</td>
  <td class="cal_head">&gt;</td>
  <td class="cal_head">&gt;&gt;</td>
</tr>
<tr>
  <td class="cal_subhead">Sun</td>
  <td class="cal_subhead">Mon</td>
  <td class="cal_subhead">Tue</td>
  <td class="cal_subhead">Wed</td>
  <td class="cal_subhead">Thu</td>
  <td class="cal_subhead">Fri</td>
  <td class="cal_subhead">Sat</td>
</tr>
<tr>
  <td colSpan="4"></td>
  <td class="cal_cell">1</td>
  <td class="cal_cell">2</td>
  <td class="cal_cell">3</td>
</tr>
<tr>
  <td class="cal_cell">4</td>
  <td class="cal_cell">5</td>
  <td class="cal_cell">6</td>
  <td class="cal_cell">7</td>
  <td class="cal_cell">8</td>
  <td class="cal_cell">9</td>
  <td class="cal_cell">10</td>
</tr>
<tr>
  <td class="cal_cell">25</td>
  <td class="cal_cell">26</td>
  <td class="cal_cell">27</td>
  <td class="cal_cell">28</td>
  <td class="cal_cell">29</td>
  <td class="cal_cell">30</td>
</tr>  </tbody></table>

フォーカスがtd のいずれかにあるかどうかを確認する必要があります。以下は、私が試したコードです。

if ($(CurrentCalendarButton).children[i].is(":focus") == true)
     alert("Keep it on")
4

1 に答える 1

0

問題は、DOM 上のすべての要素が実際にフォーカスを受け入れるわけではないということです。どの要素を受け入れるかはブラウザ次第です。フォーカスを受け取ることができる HTML 要素を参照してください。

たぶんあなたのtdにホバーイベントがあります:

var hasFocus = false;
$('td').hover(
    function () { hasFocus = true;  alert('has focus  !');},
    function () { hasFocus = false; alert('lost focus !');}
);
于 2012-11-22T07:01:46.440 に答える