Javascript jQuery文本:最大高度和滚动条
我正在使用jQuery TextText插件()创建一个输入字段,用户可以在其中输入语言作为标记,类似于Facebook输入标记的方式 总的来说,这个插件工作得很好 然而,我遇到了一个障碍,我似乎无法克服。我在输入字段上使用TextText,如下所示:Javascript jQuery文本:最大高度和滚动条,javascript,jquery,html,css,jquery-textext,Javascript,Jquery,Html,Css,Jquery Textext,我正在使用jQuery TextText插件()创建一个输入字段,用户可以在其中输入语言作为标记,类似于Facebook输入标记的方式 总的来说,这个插件工作得很好 然而,我遇到了一个障碍,我似乎无法克服。我在输入字段上使用TextText,如下所示: <script type="text/javascript"> $('#id_languages').textext({ plugins : 'tags prompt suggestions arrow autocom
<script type="text/javascript">
$('#id_languages').textext({
plugins : 'tags prompt suggestions arrow autocomplete',
tagsItems : ['English'],
suggestions : languages, //variable set earlier
prompt : 'Add more here...',
});
</script>
$(“#id#U语言”).textText({
插件:“标签提示建议箭头自动完成”,
tagsItems:['English'],
建议:语言,//前面设置的变量
提示:“在此处添加更多…”,
});
这是应该的。现在,我添加的标记越多,输入字段的增长就越多(如预期的那样)
然而,在某一点上,它会超出给定布局中可接受的高度
有没有一种有效的方法可以使用TextExt指定输入元素的最大高度,再加上添加一个垂直滚动条,而不会在带有滚动条的div中弹出“建议”下拉列表
我希望这是有道理的,我现在自己也有点困惑。我已经检查了源代码,没有任何地方可以更改它,以便在不进行黑客攻击的情况下完成您需要的内容 与此最接近的答案是限制每个输入的标签数量,这可以是 按照此处描述的方式完成: 下面是验证函数
checkLength()
:
函数checkLength(){
if($(“#id_语言”).next().children().length<4){
返回true;
}
返回false;
}
其中,数字4是允许的标签数量
如果这不令人满意,您将不得不侵入textextext.core.js
和textextext.plugin.tags.js
并查找以下函数:
invalidateBounds()
、preInvalidate()
和postInvalidate()
并玩高度操纵。我已经检查了源代码,没有任何地方可以更改它,以便在不进行黑客攻击的情况下完成您需要的操作
与此最接近的答案是限制每个输入的标签数量,这可以是
按照此处描述的方式完成:
下面是验证函数checkLength()
:
函数checkLength(){
if($(“#id_语言”).next().children().length<4){
返回true;
}
返回false;
}
其中,数字4是允许的标签数量
如果这不令人满意,您将不得不侵入textextext.core.js
和textextext.plugin.tags.js
并查找以下函数:
invalidateBounds()
、preInvalidate()
和postInvalidate()
并玩高度操纵。你能为其创建一个新的高度操纵吗?很抱歉回复太晚。我是不确定?如何将TextExt插件包含在JSFIDLE中?在左侧,第三个选项是“外部资源”,您将插件的路径放在那里……嗯,我问这个问题是因为我尝试从CDN添加TextExt插件,但我可以终生不让它做任何事情。请参阅:。我是否遗漏了一些明显的东西?我应该注意到这只是.js部分。。CSS不见了-我在任何地方都找不到它。不过现在不需要它,至少只要.js不起作用就不需要。你能为它创建一个解决方案吗?很抱歉回复太晚了。我是不确定?如何将TextExt插件包含在JSFIDLE中?在左侧,第三个选项是“外部资源”,您将插件的路径放在那里……嗯,我问这个问题是因为我尝试从CDN添加TextExt插件,但我可以终生不让它做任何事情。请参阅:。我是否遗漏了一些明显的东西?我应该注意到这只是.js部分。。CSS不见了-我在任何地方都找不到它。不过现在不需要它,至少只要.js不起作用就不需要。谢谢!我担心情况就是这样,因为我得出了同样的结论。最后,我将其限制为10个标签,并创建了一个JS/CSS hack,将div的大小限制为某个特定的大小。一点也不漂亮,但它现在可以用了。谢谢!我担心情况就是这样,因为我得出了同样的结论。最后,我将其限制为10个标签,并创建了一个JS/CSS hack,将div的大小限制为某个特定的大小。一点也不漂亮,但它现在起作用了。
$('#id_languages').textext({
plugins : 'tags autocomplete',
tagsItems : Sourcearray,
ext: {
tags: {
addTags: function(tags) {
if(checkLength()) {
$.fn.textext.TextExtTags.prototype.addTags.apply(this, arguments);
}
}
}
}
});
function checkLength(){
if($("#id_languages").next().children().length < 4){
return true;
}
return false;
}