javascript - 获取所有行中的最大文本长度

标签 javascript jointjs

如何获取所有行中所有文本的长度。我对变量范围有疑问。我只得到最后一行的文本长度。

代码:

pointerclick: function (evt, x, y) {
    var className = evt.target.parentNode.getAttribute('class');

    if (className === 'element-tool-remove')
    {
        this.model.remove();
        console.log("element removed");

        var embeddedCells = parent1.getEmbeddedCells();

        var t = new Array();      
        var maxTextLength;
        for(var d = 0; d < embeddedCells.length; d++)
        {
            t[d] = embeddedCells[d].attributes.attrs.text.text.length;
            var maxTextLength = Math.max(t[d]);
            //console.log("max text length is: " + maxTextLength);
        }
        console.log("max text length is: " + maxTextLength); // printing only last element's text length but not the max value out of all
    }
    joint.dia.CellView.prototype.pointerclick.apply(this, arguments);
}

如何从所有行中获取最大值?

最佳答案

尝试:

pointerclick: function (evt, x, y) {
    var className = evt.target.parentNode.getAttribute('class');

    if (className === 'element-tool-remove')
    {
        this.model.remove();
        console.log("element removed");

        var embeddedCells = parent1.getEmbeddedCells();

        var t = new Array();      
        var maxTextLength = 0;
        for(var d = 0; d < embeddedCells.length; d++)
        {
            t[d] = embeddedCells[d].attributes.attrs.text.text.length;
            maxTextLength = Math.max(t[d], maxTextLength);
            //console.log("max text length is: " + maxTextLength);
        }
        console.log("max text length is: " + maxTextLength); // printing only last element's text length but not the max value out of all
    }
    joint.dia.CellView.prototype.pointerclick.apply(this, arguments);
}

我已将 0 作为默认值分配给 maxTextLength 变量,并且在循环中,如果新值较大,我将替换 maxTextLength 的值。我没有办法测试该代码,但它应该可以工作。

关于javascript - 获取所有行中的最大文本长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32606205/

相关文章:

javascript - 无论如何要传递 jquery deferred $.when 数组?

javascript - 将图像加载到织物 Canvas 背景

javascript - 更改 :position event for every cell in the paper using joint. js

javascript - 联合js链接圆形和三 Angular 形

javascript - 如何在 Meteor JS 客户端主视图中显示 Mongodb 集合?

javascript - 匹配 jquery 中的字段时不显示通知 div

javascript - 如何在 AngularJs 中循环

javascript - 使用构造函数帮助填充 Raphael 和 joint.js 功能

svg - svg 形状中的文本区域

jointjs - 如何对 JointJS 论文进行中心缩放