Javascript 如何调整从API和输入动态生成的文本的大小

Javascript 如何调整从API和输入动态生成的文本的大小,javascript,angularjs,Javascript,Angularjs,我有一个从API动态生成的文本 如果我重新加载页面,5秒钟后文本将出现在myText中,我可以在输入中编辑它 我正在使用这个插件-看看文本有多大? 我只想调整长度

我有一个从API动态生成的文本

如果我重新加载页面,5秒钟后文本将出现在
myText
中,我可以在输入中编辑它

我正在使用这个插件-看看文本有多大? 我只想调整长度<15到10px的文本的字体大小

我用jQuery代码得到了以下代码:

myApp.directive('ng-fix-text',function(){
返回{
限制:“A”,
链接:函数(范围、元素、属性){
//伪jQuery代码
var text_len=$('.myDiv').find('h1').text().length;
如果(文本长度<15){
$('.myDiv').css('font-size','10px'))
}
}
};
});

顺便说一句,我不想在插件中插入代码。

您可以使用
链接
函数中声明的
元素
参数访问声明的指令中的每个DOM元素,就像使用jQuery一样。它的操作与jQuery完全相同,实际上它是jQuery抽象

首先不要忘记,在angular中,我们通过指令的驼峰大小写规范化名称来引用该指令

Angular规范化元素的标记和属性名称以确定 哪些元素与哪些指令匹配。我们通常指 指令的大小写敏感名称

因此,如果将指令命名为
ngfixtext
,则应将其称为:
ngfixtext

以下是更新的代码:

myApp.directive('ngFixText', function() {
    return {
        restrict: 'A',
        link: function(scope, element, attrs) {
            var text_len = element.find('h1').text().length;
            if (text_len < 15) {
                    element.find('h1').css('font-size', '10px')
            }
        }
    };
});
myApp.directive('ngFixText',function(){
返回{
限制:“A”,
链接:函数(范围、元素、属性){
var text_len=element.find('h1').text().length;
如果(文本长度<15){
元素.find('h1').css('font-size','10px'))
}
}
};
});

问题是什么?修复了标题+我只想调整长度<15到10px的文本的字体大小。你是说你链接的指令不能按你想要的方式工作,因此你想创建另一个指令来调整它吗?这里的问题很难理解。这个问题可以用一个更好的问题来解释。我完全不懂英语。我刚刚创建了这个指令。正在从API动态生成文本。如果长度小于15,我只想调整div中的文本大小。顺便说一下,插件工作得很好,你的代码不工作?不幸的是,这只适用于html中的“静态”文本。不是动态生成的。我不太明白你的意思。您可以根据自己的意愿修改动态生成的文本,只要您有权访问itI并发现问题。我在帖子中提到的插件生成了另一个div
text
。无论如何,Angular仍然无法更改字体大小完整代码存在问题