文本输入更改后jQuery移动div

时间:2013-01-11 22:36:53

标签: jquery css html5 position

在尝试将两个单独的文本字段输入的输入更改后,将图像持有者div移动到特定的x和y坐标。下面是x坐标的代码。

这是一个jfiddle here

var img1x;
var img1y;
var img1position;

img1position = $( "#img1" ).position();
img1x = img1position.left;
img1y = img1position.top;

我已经尝试了这个,如果输入值为“0”,它只会移动div。它不会移动任何其他东西:

$("#img1x").change(function() {
  //alert("img1x: " +img1x);
    $( "#img1" ).css('left', $( "#img1x" ).val());
});

我已经尝试了这个,它什么也没做。

$("#img1x").change(function() {
  img1x = $( "#img1x" ).val();
  //alert("img1x: " +img1x);
    $( "#img1" ).css('left', img1x);
});

4 个答案:

答案 0 :(得分:3)

尝试添加'px'

$("#img1x").change(function() {
  img1x = $( "#img1x" ).val();
  alert("img1x: " +img1x);
    $( "#img1" ).css('left', img1x + "px");
});

适合我:http://jsfiddle.net/VNqqx/

0的作用原因是left: 0是有效的CSS。

答案 1 :(得分:1)

尝试添加'px'或* 1来获取int:

$( "#img1" ).css('left', img1x + 'px');

请参阅http://jsfiddle.net/dhpkW/1/

答案 2 :(得分:1)

在左侧值中添加“px”:

$( "#img1" ).css('left', img1x+'px');

答案 3 :(得分:1)

您可以尝试进行流体转换

$("#img1x").change(function () {
    img1x = $("#img1x").val();
    alert("img1x: " + img1x);
    $("#img1").animate({
        'left': img1x
    }, 700);
});

您当时不需要px

查看http://jsfiddle.net/dhpkW/6/