jQuery mousenter适用于表数据,但不适用于整个表行
jQuery mousenter works on table data but not whole table row
我有一个表,构建如下:
<table id="my_table">
<tbody>
<tr class="row"><th>No</th><th>Name</th><th>Age</th><th>Salary</th></tr>
<tr class="row"><td>1</td><td>Yong Mook Kim</td><td>28</td><td>$100,000</td></tr>
<tr class="row"><td>2</td><td>Low Yin Fong</td><td>29</td><td>$90,000</td></tr>
<tr class="row"><td>3</td><td>Ah Pig</td><td>18</td><td>$50,000</td></tr>
<tr class="row"><td>4</td><td>Ah Dog</td><td>28</td><td>$40,000</td></tr>
<tr class="row"><td>5</td><td>Ah Cat</td><td>28</td><td>$30,000</td></tr>
</tbody>
</table>
我想对光标当前所在的整行做一些简单的效果。遗憾的是,事件仅在游标进入表数据区域时触发。这是我的Jquery代码:
$( document ).ready(function() {
$("#my_table").on("mouseenter", ".row", handle_zooming_in);
});
function handle_zooming_in() {
$("#pool").append("<img class='"popup'" src="+image_url+">");
$(".popup").css({"position":"absolute","left":event.pageX,"top":event.pageY}).show();
}
更清楚地说,仅当光标位于标签内的单词上时,handle_zooming_in函数才会触发。我可能还应该指出,当最初打开页面并通过 javascript 第二次添加行时,该表是空的。我错过了什么吗?
$(document).ready(function() {
$("#my_table").on("mouseenter", ".row", handle_zooming_in);
});
function handle_zooming_in() {
if($('td',this)>0){
console.log("NOT EMPTY");
$("#pool").append("<img class='"popup'" src="+image_url+">");
$(".popup").css({"position":"absolute","left":event.pageX,"top":event.pageY}).show();
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<table id="my_table">
<tbody>
<tr class="row">
<th>No</th>
<th>Name</th>
<th>Age</th>
<th>Salary</th>
</tr>
<tr class="row">
<td>1</td>
<td>Yong Mook Kim</td>
<td>28</td>
<td>$100,000</td>
</tr>
<tr class="row">
<td>2</td>
<td>Low Yin Fong</td>
<td>29</td>
<td>$90,000</td>
</tr>
<tr class="row">
<td>3</td>
<td>Ah Pig</td>
<td>18</td>
<td>$50,000</td>
</tr>
<tr class="row">
<td>4</td>
<td>Ah Dog</td>
<td>28</td>
<td>$40,000</td>
</tr>
<tr class="row">
<td>5</td>
<td>Ah Cat</td>
<td>28</td>
<td>$30,000</td>
</tr>
<tr class="row"></tr>
</tbody>
</table>
And I would like to do some simple effects on the whole row the cursor is currently on. Sadly the events only fire when the cursor enters in a table data area. Here's my Jquery code:
试试这个可能会有所帮助
在使用 javascript 添加行后声明$("#my_table").on("mouseenter", ".row", handle_zooming_in);
。
也许将该代码更改为$('.row').on("mouseenter", handle_zooming_in);
?
相关文章:
- HTML5 Canvas toDataURL(“image/png”)适用于一些绘画,而有些则不然,不确定原因
- JavaScript不显示剩余字符,但适用于其他页面
- 我如何完善这个Javascript代码,使其只适用于来自图像的链接(而不是来自文本的链接)
- 为什么这只适用于身体部分而不是头部
- 为什么不't此正则表达式适用于重复出现的对
- document.getElementById 对内部 html 的调用适用于 $_POST 和 $_GET 变量,但不
- JavaScript 位置适用于本地主机而不是服务器
- Rally App SDK 2.0:Rallymultiobjectpicker,适用于不显示displayField的
- jQuery事件在Mozilla上不起作用,并且适用于其他浏览器
- Angular.js - 控制器不为索引执行,适用于其余模板
- D3 .on 更改适用于文本而不是图表
- Zillow 数据 - json_encode不起作用 - 适用于常规变量
- 弹出模式仅适用于表格中的第一个元素,第二次单击后不会再次打开
- Phonegap Android项目适用于模拟器,而不是实际的手机
- ajax jonp 不应该适用于 请求的上不存在“访问控制-允许源”标头
- AngularJS:ng-单击不起作用,适用于<按钮>
- Javascript不会在移动设备上加载.适用于桌面
- 为什么我的代码适用于高度:100px,而不是高度:100%
- 拖放区.js + Laravel-多文件上传不起作用(仅适用于一个文件)
- 哪些限制适用于不透明响应