找回密码
 立即注册

QQ登录

只需一步,快速开始

[已处理] 表格

dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-3-20 16:27:42
51#
您说得直接打开时在浏览器中打开?具体什么浏览器?
“将拖拽的文字放入单元格”是一个什么样的操作?
回复 使用道具 举报
zhaozimingT
高级会员   /  发表于:2017-3-20 17:58:10
52#
我的意思是我写一个web demo 。 我把demo在hbuilder 打开的时候,我把一个词拖拽到表格中,很快就在表格中显示出来了,但是我打开本地文件。比如在D盘里面打开文件夹,运行html 文件。 拖拽的时候就很慢才显示出来,
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-3-21 11:59:32
53#
这个就要具体分析了,您可以浏览器里测下性能,看具体哪里慢了
blob587902831.png
回复 使用道具 举报
zhaozimingT
高级会员   /  发表于:2017-3-21 16:14:16
54#
测试了  基本就是获得单元格坐标是 , image.png126982420.png image.png396718749.png image.png313000182.png
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-3-21 18:37:10
55#
这个问题您单独发个帖子,把您这部分代码附上,我测试下。
回复 使用道具 举报
zhaozimingT
高级会员   /  发表于:2017-3-25 20:07:01
56#
你看一下

tuozhuai.txt

9.75 KB, 下载次数: 235

回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-3-27 18:15:59
57#
还木有重现出问题,继续测试后给您答复
回复 使用道具 举报
zhaozimingT
高级会员   /  发表于:2017-3-28 09:51:39
58#
尽量快一点好吗。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-3-28 13:45:08
59#
本帖最后由 dexteryao 于 2017-3-28 13:47 编辑

您的代码我没有直接跑起来,我修改下运行了。通过您的代码,看您是想通过鼠标拖动赋值。
由于dragover这个事件只要鼠标有移动都会触发,所以从性能角度您需要控制setValue的时机,放置页面频繁重绘造成的卡顿。

不太清楚您为什么用tipchelltype。可以直接用hitTest获取到当前鼠标所在的单元格。如果要加tip,也可以直接加不需要celltype。
下面是我的代码。

另外如果不同的问题请重新发帖,这样方便记录跟踪。
  1.    var activeSheet = spread.getActiveSheet();
  2.                         var drop = document.getElementById("ssvp_vp");

  3.                         var count = 0, item = "item";
  4.                         drop.addEventListener("dragenter", function (e) {
  5.                                 count = 0;
  6.                                 var data = e.dataTransfer.getData("Text");
  7.                                 //item = $("#" + data).text();
  8.                         });
  9.                         drop.addEventListener("dragleave", function (e) {

  10.                         });
  11.                         drop.addEventListener("dragover", function (e) {
  12.                                 e.preventDefault();
  13.                                 if (count++ % 50 !== 0) {
  14.                                         return;
  15.                                 }
  16.                                 var hitinfo = activeSheet.hitTest(e.clientX, e.clientY);
  17.                                 if (hitinfo.hitTestType === GC.Spread.Sheets.SheetArea.viewport) {
  18.                                         activeSheet.setValue(hitinfo.row, hitinfo.col, item);
  19.                                 }
  20.                         });
复制代码


回复 使用道具 举报
123456
您需要登录后才可以回帖 登录 | 立即注册
返回顶部