2011-03-13 52 views
0

我正在使用jQuery Rotate plugin来旋转项目。它有效,但我遇到了一些问题。jQuery旋转插件

我有代码:

<input type="text" name="np_angle" id="np_angle" size="2" maxlength="4" value="<?=$userinfo->np_angle?>" onchange="$('#np_drag').rotate(this.value)" /> 

<div id="np_drag" style="color:<?=$userinfo->np_color?>; font-size:<?=$userinfo->np_size?>px;position:absolute;top:<?=$userinfo->np_y?>px;left:<?=$userinfo->np_x?>px" class="draggable np_drag"> 
<?=$userinfo->np_text?> 
</div> 

<script>$("#np_drag").rotate(<?=$userinfo->np_angle?>);</script> 

的问题是输入平变化。当我改变它时,#np_drag不要旋转。但是,当值是静态的(例如onchange="$('#np_drag').rotate(45)" 它的工作原理。

为什么呢?我怎样才能解决我的问题?

回答

0

在声明$('#np_drag').rotate(this.value),this将引用np_drag,我相信你希望它指的是np_angle的值。试试这个:

<input type="text" name="np_angle" id="np_angle" size="2" maxlength="4" value="<?=$userinfo->np_angle?>" /> 

<script>$('#np_angle').bind('change', function(e){$('#np_drag').rotate($('#np_angle').val())});" </script> 
+0

并添加parseInt($('#np_angle')。val()) – CappY 2011-03-16 06:38:03

1

id

... id="my-id" onchange="$('#np_drag').rotate($('#my-id).val())" ... 

选择它。此外,你可能要绑定的onchange事件,而不是将它写入HTML源代码

+0

但是当我尝试'平变化=“警报(THIS.VALUE);”'它提醒我,我在np_angle输入的值。 – CappY 2011-03-13 22:09:15