Javascript 如何在jquery ui中单击按钮时触发拖动事件

Javascript 如何在jquery ui中单击按钮时触发拖动事件,javascript,jquery,jquery-ui,drag-and-drop,Javascript,Jquery,Jquery Ui,Drag And Drop,我试图将图像裁剪工具集成到我的网站中。 我在用这个 虽然它在这个例子上运行得很好,但不幸的是,我自己的网站并不是那么平滑 当我在屏幕上拖动框时,它不会总是更新坐标,除非我在最后再拖动一点点 我的计划是简单地获取坐标并将其发送到服务器,但这阻碍了我获取不正确的坐标。即使我将裁剪区域拖动另一个像素,最后它也会正确地更新裁剪区域 我的想法是简单地触发一个微不足道的自动拖动,比如.1px,以获得正确的坐标。但是,我不知道如何触发拖动事件 我想用mousedown,但我仍然不知道如何告诉它拖动 下面是插件

我试图将图像裁剪工具集成到我的网站中。 我在用这个

虽然它在这个例子上运行得很好,但不幸的是,我自己的网站并不是那么平滑

当我在屏幕上拖动框时,它不会总是更新坐标,除非我在最后再拖动一点点

我的计划是简单地获取坐标并将其发送到服务器,但这阻碍了我获取不正确的坐标。即使我将裁剪区域拖动另一个像素,最后它也会正确地更新裁剪区域

我的想法是简单地触发一个微不足道的自动拖动,比如.1px,以获得正确的坐标。但是,我不知道如何触发拖动事件

我想用mousedown,但我仍然不知道如何告诉它拖动

下面是插件代码本身

编辑:以下是事件处理的代码

$('#output img').jrac({
  'crop_width': 250,
  'crop_height': 170,
  'crop_x': 100,
  'crop_y': 100,
  'image_width': 400,
  'viewport_onload': function() {
    alert('viewport loaded');
    var $viewport = this;
    var inputs = $('#coordinates').find('.coords input:text');
    var events = ['jrac_crop_x','jrac_crop_y','jrac_crop_width','jrac_crop_height','jrac_image_width','jrac_image_height'];
    for (var i = 0; i < events.length; i++) {

      var event_name = events[i];
      // Register an event with an element.
      $viewport.observator.register(event_name, inputs.eq(i));
      // Attach a handler to that event for the element.
      inputs.eq(i).bind(event_name, function(event, $viewport, value) {
        $(this).val(value);
      })
      // Attach a handler for the built-in jQuery change event, handler
      // which read user input and apply it to relevent viewport object.
      .change(event_name, function(event) {
        var event_name = event.data;
        $viewport.$image.scale_proportion_locked = $('#coordinates').find('.coords input:checkbox').is(':checked');
        $viewport.observator.set_property(event_name,$(this).val());
      });
    }
    $viewport.$container.append('<div>Image natual size: '
      +$viewport.$image.originalWidth+' x '
      +$viewport.$image.originalHeight+'</div>')
  }
})
// React on all viewport events.
.bind('jrac_events', function(event, $viewport) {
  var inputs = $('#coordinates').find('.coords input');
  inputs.css('background-color',($viewport.observator.crop_consistent())?'chartreuse':'salmon');
});

你有没有检查过错误控制台中的任何消息?我有,不是它根本不工作,而是它似乎也没有响应,一个原因可能是因为在我的网站上,该功能是通过动态加载的图像加载到AJAX success中的,而在该网站上,它是通过静态图像加载到页面上的,以便能够提供帮助,我们必须查看您的代码。好的,我添加了代码来处理拖动事件。我解决了它,抱歉,这里没有人可以做任何事情,我在整个div上意外设置了一个transition属性,这导致了奇怪的行为