我一直试图同时调整两个窗口的大小,但由于某种原因它不起作用。 我试图捕捉错误,但没有。
注意:我不想使用jquery resize,因为它没有快速的inteval来检查resizes
JAVASCRIPT:
function _u(e){
try {
e.parent('.boss').find('.first').width( e.width() ); //tried with parent('.boss').next('.first') or directy with prev('.first')
} catch(err){alert(err);}
}
$(document).ready(function(){
$(".data").each(function(){
var resizerint;
$(this).mousedown(function(){
try {
var eee = $(this);
var resizerint = setInterval(function(){
try {
_u( eee );
} catch(err){alert(err);}
},10); // i need it 10ms
} catch(err){alert(err);}
$('.test').html('<font style="position:absolute;top:0;right:0;color:red;"> mouse DOWN </font>');
}).mouseup(function(){
try{
clearInterval(resizerint);
} catch(err){alert(err);}
$('.test').html('<font style="position:absolute;top:0;right:0;color:green;"> mouse UP </font>');
});
});
});
和HTML:
<div class="boss">
<div class="first">
<table>
<tr>
<td>
<div class="title">ONEEEEE</div>
</td>
</tr>
</table>
</div>
<div class="second">
<textarea class="data" > ONEEE TEXTY TESTY NJAMMM! </textarea>
</div>
</div>
<div class="boss">
<div class="first">
<table>
<tr>
<td>
<div class="title">TWOOOOOO</div>
</td>
</tr>
</table>
</div>
<div class="second">
<textarea class="data" > TWOOO TEXTY TESTY NJAMMM! </textarea>
</div>
</div>
<div class="text"></div>
提前感谢您提供的任何帮助。
JSFIDDLE(如果您看到,在TEXTAREA的MOUSEDOWN时,蓝色的重新调整大小) http://jsfiddle.net/2sfFW/
答案 0 :(得分:1)
我的第一个答案是缺少“$”,但它没有解决问题。
在某种程度上让它工作,但你必须先在文本字段中点击它才能初始化。我用你的蓝色版本作为可视化工具。
正确的jquery遍历是
e.parent().parent('.boss').find('.first')
或
e.parents('.boss').find('.first')
您必须使用复数版本,因为它上面有两个父div。使用parent()。parent()更具体,但在这种情况下可能不是必需的。
如果你删除mouseup / mousedown处理程序,它将在document.ready初始化,我认为可能是你想要的。除非您有其他需要,否则您不一定需要清除变量,因为.each()会创建与所讨论的特定div绑定的函数的单独实例。这是一个类似的版本:
答案 1 :(得分:0)
不能在JSfiddle中修复它,但对于初学者来说,你已经离开了“$”。我已经建立了一个JSfiddle链接,以便其他人可以尝试。 http://jsfiddle.net/aQKVD/
function _u(e){
try {
e.parent('.boss').find('.first').width( e.width() ); //tried with parent('.boss').next('.first') or directly with prev('.first')
} catch(err){alert(err);}
}
$(document).ready(function(){
(".data").each(function(){
最后一行应该是
$(".data").each(function(){