我正在使用jCrop,我需要一个设定的宽高比。例如,如果有人在X文本框中输入“2”而在Y文本框中输入“2”,则宽高比应为1.
但是,如果我更改文本框上的值(例如3和1),jCrop应该获取新值。现在它只是初始化,不回头。
代码如下。 (我尝试了很多,但无法弄清楚。)
-JQUERY-
jQuery(function($){
var numberX = $('#numberX').val();
var numberY = $('#numberY').val();
$('#jcrop_target').Jcrop({
aspectRatio: ($(this).numberX / $(this).numberY),
... rest of the codes
-HTML-
<input type="text" id="numberX" name="numberX" value=""/>
<input type="text" id="numberY" name="numberY" value="" />
TLDR; 当我更改numberX和numberY文本框的值时,它应该反映到jCrop。 jCrop只保留init值。当文本框上的值发生变化时,应重新计算纵横比。
非常感谢任何帮助!
答案 0 :(得分:1)
将您的代码改为function()
。然后使用jQuery,您可以在document.ready
和更改时运行该功能(参见http://api.jquery.com/change/)
例如,
function changenumbers(){
var numberX = $('#numberX').val();
var numberY = $('#numberY').val();
$('#jcrop_target').Jcrop({
aspectRatio: ($(this).numberX / $(this).numberY),
/* ... rest of the code */
}
$document.ready(function(){
changenumbers();
$("#numberX").change(function(){ changenumbers(); }
$("#numberY").change(function(){ changenumbers(); }
}