0

我正在尝试获取 div 内标签文本的大小,大小的 chech 为 0 隐藏此 div

更新文本在 dnn_ctr2802_View_lblHelp 类 dnnHelpText

javascript

  $('.dnnTooltip').dnnTooltip();
    //get the size of the hiden label
    var labelTextSize = $(".dnnHelpText").val().length;
    console.log("labelTextSize");

    if(labelTextSize == 0)
    {
        $('.dnnTooltip').hide()
    }

html

 <div class="pull-right eyeball">
    <img id="img_type" src="/ideaPark/DesktopModules/ExplorationTypeSaftyAlert/img/3.png" />
    <img id="img_safety_alert" class="eyeball-warning" src="/ideaPark/DesktopModules/ExplorationTypeSaftyAlert/img/exploration-warning.png" />
</div>

<div class="dnnTooltip">
<label id="dnn_ctr2802_View_label">
    <a id="dnn_ctr2802_View_cmdHelp" tabindex="-1" href="javascript:__doPostBack(&#39;dnn$ctr2802$View$cmdHelp&#39;,&#39;&#39;)"><span id="lblLabel"></span></a>

</label>
<div id="dnn_ctr2802_View_pnlHelp" class="dnnFormHelpContent dnnClear" style="display:none;">

    <span id="dnn_ctr2802_View_lblHelp" class="dnnHelpText"> bnmbnmbnmbnmtfgjnfvyg</span>
    <a href="#" class="pinHelp"></a>

</div>
4

2 回答 2

1

试试这个 & BTW 尝试使用 jquery UI 函数 .remove()

   var labelTextSize = $('.dnnHelpText').text().length;
    console.log("text:" + labelTextSize.length);
    if (labelTextSize == 1) {
        $('.dnnTooltip').remove();
    }
于 2013-10-15T03:19:49.183 回答
0

尝试这个:

var labelTextSize = $("#lblLabel").width();

为了测试,试试这个:

console.log(labelTextSize);

更新:

由于一切正常,我一直在寻找其他方法来实现这一目标。我发现了这个问题,也许它对你有用。

尝试这个:

$(".dnnHelpText").bind("DOMSubtreeModified", function(){
    var labelTextSize = $(this).width();

    if(labelTextSize == 0)
    {
        $('.dnnTooltip').hide()
    }
});

当内容label发生更改时,该片段会添加一个事件侦听器。因此,在事件内部,您可以访问它的属性来执行您的例程。

于 2013-10-15T00:26:54.240 回答