我使用fabric.js创建了一种'多边形选择器'或'多边形制作器'.每次单击都会创建多边形的一个角,可以选择,移动等等......双击原始点'关闭'多边形.在这一点上,我采用构成多边形的所有圆/线并将它们分组.到现在为止还挺好.
当双击这样一个组时,我希望它取消组合并恢复到可移动节点(即移动圆形重塑多边形等); 但是有一些奇怪的事情发生了 - 看看当你移动圆圈时会发生什么,某些线条看起来"没有加入"圆圈......
我已经审查了每个group/ungroup相关的fabric.js线程(这里/那里/无处不在).似乎没有覆盖我在这里的"连接"对象的类型.
我把这个问题放在一起的小提琴说它比我更好:http://jsfiddle.net/bhilleli/4v8mkw6q/
破碎的代码是@:
//dbl clicked a group so lets ungroup it!
items = p._objects; // grab the items from the group you want to
// translate the group-relative coordinates to canvas relative ones
p._restoreObjectsState();
// remove the original group and add all items back to the canvas
canvas.remove(p);
for (var i = items.length - 1; i >= 0; i--) {
canvas.add(items[i]);
}
canvas.renderAll();
Run Code Online (Sandbox Code Playgroud) 今天我们遇到了一个问题,令我惊讶的是我以前从未遇到过。它与字符串比较有关:
echo ("9400110897799014514025" == "9400110897799014514018" ? "match" : "not");
echo ("94001108" == "94001107" ? "match" : "not");
Run Code Online (Sandbox Code Playgroud)
2组都不匹配,但是第一个错误地报告了“匹配”,而第二组正确地将其声明为“不是”匹配。我们通过使用'==='代替'=='解决了该问题,但我真的很想了解这里发生了什么。
添加:这是PHP 5.3