我正在使用 GAS HTML 服务和 jquery。
当鼠标悬停在表格的某一行时,我想显示一些编辑按钮。问题是jquery的悬停功能不起作用。
我尝试了几个元素,例如 tr,td,甚至 li,但没有成功。我不知道这是一个caja问题还是什么。
你可以帮帮我吗?
编辑我想我发现了问题:由于 caja 我无法将函数绑定到元素。我将绑定操作放在 ready 函数中,现在它运行良好。我不太了解这个机制,所以如果有人可以向我解释一下,我将非常感激。为什么文档准备功能不被认为是动态的?为什么该功能有效而其他功能无效?
这是HTML代码
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<style type="text/css">
<!--
.odd {background: #d3d3d3;}
-->
</style>
<script type="text/javascript">
$(document).ready(function(){
$("#tabs").tabs();
google.script.run.withSuccessHandler(fillTabs).getAllTabsData();
});
$("tr").hover(
function () {
console.log("Mouse hover row");
$(this).css("background","yellow");
},
function () {
console.log("Mouse leaving row");
$(this).css("background","");
}
);
$( "li.fade" ).hover(function() {
$( this ).fadeOut( 100 );
$( this ).fadeIn( 500 );
});
</script>
<div id="tabs">
</div>
<script>
function fillTabs(tabs) {
var tabsDiv;//=$('#tabs');
var table;
var data;
for (var i = 0; i < tabs.length; i++) {
data=tabs[i].data;
var tabName=tabs[i].name;
tabsDiv=$('#'+tabName);
table='<table>'
for( var j=0; j<data.length; j++){
table+='<tr>'
for(var k=0; k<data[j].length;k++){
table+='<td>'+data[j][k]+'</td>'
}
table+='</tr>'
}
table+='</table/>'
tabsDiv.html(table);
}
$("tr:odd").addClass("odd");
$("#tabs").tabs();
}
</script>