0

我在用着:

jqGrid 4.5.2.  
jQueryUI 1.10.3
jQuery 1.9.1

在我的 jqGrid 设置中,我这样做:

gridComplete: setupJobStatusLegend

调用:

function setupJobStatusLegend() {
    $(document).tooltip({
        items: '.has_status_legend',
        content: function(){
            var legend = $('#status_legend');
            legend.css('zIndex', 9999);
            console.log(legend.html());
            return legend;
        }
    });
}

当我第一次将鼠标悬停在行上时效果很好——很多次。但是当我单击一行或离开网格的范围时,工具提示再也不会出现。

关于它为什么停止显示的任何想法?当它工作时,它会在控制台日志行中显示:

<img src="/static/img/circle_15_green.png"> Active<br>
<img src="/static/img/circle_15_yellow.png"> Hold<br>
<img src="/static/img/circle_15_orange.png"> Closed<br>
<img src="/static/img/circle_15_red.png"> Deleted<br>

当它不工作时,它会显示undefined在控制台日志行中。

status_legend 的 HTML 是:

<div id="status_legend" style="position: absolute; zoom: .75; opacity: 1; background-color: #ffffff;">
    <img src="/static/img/circle_15_green.png"> Active<br/>
    <img src="/static/img/circle_15_yellow.png"> Hold<br/>
    <img src="/static/img/circle_15_orange.png"> Closed<br/>
    <img src="/static/img/circle_15_red.png"> Deleted<br/>
</div>
4

1 回答 1

1

看起来dom不再以某种方式从文档中找到/或删除。所以我只能猜测,因为 Javascript 使用通过引用传递,内容对象已经移动了很多次,直到它以某种方式被删除。

你可以尝试复制对象吗?

尝试改变:

var legend = $('#status_legend');

var legend = $('#status_legend').clone();
于 2013-07-16T01:25:58.390 回答