未加载分页结果的JavaScript
我正在使用tablesorter在表中对结果分页。我还在其中一列上有一个工具提示,显示它被批准的时间。表格中的前10个结果(默认加载)将正确显示工具提示。如果切换到下一页,悬停将显示默认的浏览器标题工具提示,而不是由JS触发的工具提示。我相信这是因为加载JS的方式,而不是因为分页最初隐藏的内容。下面是我如何调用工具提示的:未加载分页结果的JavaScript,javascript,jquery,html,Javascript,Jquery,Html,我正在使用tablesorter在表中对结果分页。我还在其中一列上有一个工具提示,显示它被批准的时间。表格中的前10个结果(默认加载)将正确显示工具提示。如果切换到下一页,悬停将显示默认的浏览器标题工具提示,而不是由JS触发的工具提示。我相信这是因为加载JS的方式,而不是因为分页最初隐藏的内容。下面是我如何调用工具提示的: $(document).ready(function () { if ($("[rel=tooltip]").length) {
$(document).ready(function () {
if ($("[rel=tooltip]").length) {
$("[rel=tooltip]").tooltip();
}
});
只是为了显示链接:
//This link displays my fancy tooltip correctly//
<a href="#" style="color:#000;" rel="tooltip" title="Monday January 28th 2013 12:11 PM">
//This link does not//
<a href="#" style="color:#000;" rel="tooltip" title="Monday January 28th 2013 01:25 PM">
//此链接正确显示我的花式工具提示//
//此链接不存在//
正如我所说,这两行之间的唯一区别是,一行是在页面加载时加载的,另一行是通过更改页面上可见的行数或转到下一页(顺便说一句,JS实际上不会更改页面位置)触发的。这些行是从MySQL生成的,而前十行可以工作,之后就没有了。
我的结论正确吗?我会错过什么吗?谢谢你的建议
编辑:我想补充一点,使我感到困惑的是,分页器实际上并没有从html源代码中隐藏行。它只是不在浏览器窗口中显示它们 您的tooltip()似乎只是处理结果列表中的第一个条目
$("[rel=tooltip]")
这总是会返回一个列表,如果只找到一个,那么任何函数都能正常工作就很好了
为了让它工作,试着把每一个都循环一遍
$(function(){
$("[rel=tooltip]").each(function(){
$(this).tooltip();
});
});
我的假设是,您正在通过AJAX加载页面。在这种情况下,您必须回忆AJAX调用成功时的工具提示定义。你可以这样做
function initTooltip(){
if ($("[rel=tooltip]").length) {
$("[rel=tooltip]").tooltip();
}
}
$(document).ready(function () {
initTooltip();
});
$.ajax({
/* some code */
success: function(){
initTooltip();
}});
注意:这不是完整的代码。这将给出如何处理您的问题的想法