2009-09-16 61 views
1

我使用的插件在这里http://plugins.jquery.com/project/autogrow和我在Internet Explorer和Chrome(不火狐)有一个问题自动增长jQuery插件在互联网动态内容资源管理器

下面

见代码:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#main').html('<textarea class=\"test\">aaaa</textarea>'); 
     $('.test').autogrow(); 
</script> 

</head> 

<body> 
<div id="main"> 
</div> 
</body> 
</html> 

基本上如果元素在启动页面后是新的,它不起作用。所以,我攻入了插件了一下,改变使用的liveQuery(68行)

 this.textarea.livequery(function() { 
    $(this).focus(function() {self.startExpand()}); 
    $(this).blur(function() {self.stopExpand()}); 
     }); 

仍然无法正常工作,虽然Firefox是确定这些线不过。

你能帮忙吗?

回答

2

我已在Chrome/Safari上通过进行以下两个变化:

  1. 在你的代码更改“$('#main').html('<textarea class=\"test\">aaaa</textarea>');”包括一个line-height风格,例如:“$('#main').html('<textarea class=\"test\" style=\"line-height: 16px\">aaaa</textarea>');
  2. 改线在jquery.autogrow.js 50从“if(this.line_height == NaN)”文件为“if(isNaN(this.line_height))

效果是在Chrome/Safari浏览器相当紧张的,这似乎是与WebKit的报告textarea的新应用高度为4px,然后将其设置为,我认为这是由于盒子模型和一些浏览器应用的样式,但我不知道。如果你对FF中的效果感到满意,那么这应该起作用,因为它在FireFox中也非常紧张。

+0

我和你说的一样,但没有工作。你还有其他地方有改变吗? – 2009-09-16 07:17:20

+0

没关系。我将代码改回原来的并且工作了! – 2009-09-16 07:24:54