使用jQuery UI draggables和droppables时,如何在drop上更改拖放的元素?我试图将一个DIV拖动到另一个可排序的DIV.在删除时,我想更改已删除的DIV上的类并更改其innerHTML内容.
在阅读各种StackOverflow问题后,我的代码如下所示:
$(".column").droppable({
accept: '.element-dragging',
drop: function(event, ui) {
if ($(ui.draggable).hasClass("elemtxt")) {
$(ui.draggable).replaceWith('<div class="element element-txt">This text box has been added!</div>');
}
}
})
Run Code Online (Sandbox Code Playgroud)
它不适合我.:-(
我的代码的完整副本位于http://www.marteki.com/jquery/bugkilling.php.
我搜索了这个问题,人们已经回答了类似的问题,但由于某种原因,我无法得到任何工作.我一定在这里遗漏了一些东西......无论如何,当我运行以下代码时,永远不会调用TextBox_DragEnter处理程序.但是,如果我将xaml中的TextBox元素更改为TextBlock元素,则会调用它.有没有办法从TextBox元素获得相同的行为?以下代码完全隔离了问题......
MainWindow.xaml:
<Window x:Class="Wpf1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid Name="myGrid">
<TextBox AllowDrop="True" PreviewDragEnter="TextBox_DragEnter" PreviewDrop="TextBox_Drop" />
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
MainWindow.xaml.cs:
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Collections.ObjectModel;
namespace Wpf1
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void TextBox_DragEnter(object sender, DragEventArgs e)
{
e.Effects = DragDropEffects.Copy;
}
private void TextBox_Drop(object sender, DragEventArgs e)
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
提前谢谢了!
安德鲁
编辑:
为了澄清,我想允许将自定义对象放入文本框中.在文本框的Drop处理程序中,我想将文本框的文本设置为对象中的属性,然后将TextBox的IsReadOnly属性设置为false.我只是在为TextBox拖放时遇到一些麻烦......
有谁知道为什么以下网站拖放示例(加上许多其他在线教程)在Internet Explorer 9中不起作用?Chrome,FireFox和Safari都可以.
http://www.html5rocks.com/tutorials/dnd/basics/
我认为IE9被认为是最符合HTML5标准的浏览器?尤其是DnD,因为自IE5以来它们一直支持它.我是否必须在某处更改设置?
我玩HTML5和CSS3越多...... IE9缺乏的越多.
有没有人有任何链接到在IE9中工作的DnD教程?
按照我的方案.
我有一个应用程序,它将文件结构(文件夹,文件)从数据库加载到WPF ListView.现在我想从这个ListView中获取一个文件,将它拖到我的桌面(或一些打开的资源管理器窗口)上并将其放在那里.基本的拖放,没有什么花哨的.这听起来像是Windows应用程序的"标准"功能 - 但谷歌无济于事.
那我该怎么做呢?互操作性展示?
谢谢
编辑:谢谢你的解决方案,我仍然需要做一些谷歌搜索.这是我的完整解决方案.
我只是想知道用于拖放的HTML5 API是否包括对触摸屏显示的支持.
我在想iPhone,但我知道这还不支持.我想知道这是否只是赶上Apple的一部分,以支持HTML5拖放Safari手机,但我也在想也许HTML5 API不够强大,但我非常怀疑.
在标准的触摸屏笔记本电脑平板电脑等上怎么样,我没有,所以我无法测试,但我想会包括支持,因为据我所知,表接口只是取代鼠标控制,所以就浏览器而言,最终用户实际上只是使用鼠标.
有什么想法吗?
我对RecyclerView的ItemTouchHelper有疑问.
我正在制作一个游戏.游戏板实际上是RecyclerView.RecyclerView的GridLayoutManager具有一些跨度计数.我想实现拖放 recyclerview的项目.任何项目都可以拖动所有方向(向上,向下,向左,向右).
private void initializeLayout() {
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutFrozen(true);
recyclerView.setNestedScrollingEnabled(false);
// set layout manager
GridLayoutManager layoutManager = new GridLayoutManager(getContext(), BOARD_SIZE,
LinearLayoutManager.VERTICAL, true);
recyclerView.setLayoutManager(layoutManager);
// Extend the Callback class
ItemTouchHelper.Callback itemTouchCallback = new ItemTouchHelper.Callback() {
public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder, RecyclerView.ViewHolder target) {
Log.w(TAG, "onMove");
return false;
}
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
// Application does not include swipe feature.
}
@Override
public void onMoved(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
int …Run Code Online (Sandbox Code Playgroud) android drag-and-drop gridlayoutmanager android-recyclerview
无论如何使用HTML5拖放功能或/和File API将jpg图像从一个窗口拖到另一个窗口?
我的想法是,我可以将Facebook从Facebook拖动到另一个浏览器的窗口,并使用自定义HTML来获取该图像.
或者,至少,从桌面拖动到浏览器的方法?
非常感谢
我目前正在为Android(我的第一个应用程序)开发一个应用程序,它可以让用户看到地铁地图,并能够捏缩放和拖动.
我目前正在修改Hello Android,3rd Edition中的代码,并进行了缩放缩放和拖动工作.我正在使用Matrix作为我的布局比例.
但是我现在有3个问题:
我尝试了很多东西来限制拖动参数,但我似乎无法阻止它被拖离父视图(并且实际上可以从视图中消失).我已经尝试在XML文件中设置布局参数,但它不起作用.
我可以捏缩放,但我又遇到了麻烦,限制了变焦量.我正在尝试设置max_zoom和min_zoom以限制缩放值(我将在之后发布我的代码)
我也很难尝试在我的图像上映射坐标,以便人们可以点击某些部分(这一点的全部意义是让用户点击地图上的一个工作站并查看有关它的信息)
我有一种感觉我遇到了麻烦,因为我正在使用矩阵比例.
这是我目前的代码:
Touch.java
package org.example.touch;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Matrix;
import android.graphics.PointF;
import android.os.Bundle;
import android.util.FloatMath;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.GridView;
import android.widget.ImageView;
public class Touch extends Activity implements OnTouchListener {
private static final String TAG = "Touch";
private static final float MIN_ZOOM = 1.0f;
private static final float MAX_ZOOM = 5.0f;
// These matrices will be used to move and zoom image
Matrix matrix = …Run Code Online (Sandbox Code Playgroud) 我试图获得x并y使用jQuery可拖动的对象.
场景是,我将一个对象拖放到另一个对象上,并希望得到拖放对象的位置.
编辑:现在我可以获得对象的位置,但我需要更多:
这是我尝试过的:
<script>
$(function() {
$('#draggable').draggable({
drag: function() {
var offset = $(this).offset();
var xPos = offset.left;
var yPos = offset.top;
$(this).text('x: ' + xPos + 'y: ' + yPos);
}
});
$("#droppable").droppable({
drop: function(event, ui) {
$(this)
.addClass("ui-state-highlight")
.find("p")
.html("Dropped!");
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
现在我可以获得可拖动对象的位置,但我需要它可以调整大小,除了获得可拖动对象之外x,y,我还需要它的大小.
我有一个应用程序,我希望能够拖放以重新排序和排列颜色组.jQuery 对于网格的可排序似乎没有反应,而且有点儿.microjs推荐使用kbjr的DragDrop,但该库没有列表概念,只有可移动对象.Sproutcore有一个很好的实现,但我找不到它为网格工作的演示.
我的UI看起来像这样:

我希望用户能够在组内拖动颜色以及在组之间拖动它们.