动态.js单击画布外的按钮时从画布中删除图像
Kinetic.js removing image from canvas on click of a button outside the canvas
需要一些帮助。我不知道是动力学.js库问题还是我在这里做错了什么。我正在Windows.onload上加载2张图像然后在画布外有一组图像,然后单击我将它们放置在画布内的图像,工作正常..(我只使用了一个函数来加载画布外部的任何图像。图片集 :
<li>
<a href="javascript:void(0)" onclick="loadWithType(document.getElementById('i3'))">
<img src="<?php echo base_url()?>images/eagle/baby1.png" id="i3" alt="Pulpitrock"width="100" height="120" /></a>
<a href="javascript:void(0)" onclick="removewithType(document.getElementById('i3'))">Close</a>
</li>
<li>
<a href="javascript:void(0)" onclick="loadWithType(document.getElementById('i4'))">
<img src="<?php echo base_url()?>images/eagle/pattern-1.png" id="i4" alt="Pulpit rock" width="100" height="120" /></a>
<a href="javascript:void(0)" onclick="removewithType(document.getElementById('i4'))">Close</a>
</li>
加载图像
function loadWithType(img){
var sources = {
yoda1 : img.src,
};
loadImages(sources,initStage1);
};
功能(定义位置和全部)
function initStage1(images){
layert = new Kinetic.Layer();
var yoda1 = new Kinetic.Image({
image: images.yoda1,
x: 106,
y: 0,
width: 180,
height: 220,
draggable:true,
detectionType: "pixel"
});
/*
* check if animal is in the right spot and
* snap into place if it is
*/
yoda1.on("dragend", function() {
layert.draw();
// disable drag and drop
yoda1.saveImageData();
});
layert.add(yoda1);
stage.add(layert);
yoda1.saveImageData();
}
这是工作正常..(单击图像时加载图像)
但是当我尝试通过关闭按钮删除图像时..我遇到了麻烦,因为最新的图像被删除,之后该库给我抛出了一个错误。我正在做这样的事情..
function removewithType(img){
var sources = {
yoda1 :img.src,
};
loadImages(sources,removeStage1);
}
function removeStage1(images){
var yoda1 = new Kinetic.Image({
image: images.yoda1,
x: 106,
y: 0,
width: 180,
height: 220,
draggable:true,
});
layert.clear();
stage.remove(layert);
layert.draw();
}
这里首先..layert.remov(yoda1) 函数不起作用。
并且此函数以意想不到的方式运行。
任何指针
谢谢。。
如果要删除图像的原因是隐藏它,则可以简单地使用.hide()函数:
yoda1.hide();
layert.draw();
代码的另一个问题是您在stage.remove(layert);
删除代码后使用了layert.draw();
,因此当您删除此层时,您无法绘制它。
相关文章:
- 使用php或javascript从facebook相册URL中删除多余的部分
- 如何从rails中的代码中删除新行( )
- addData()从最新图表中删除.js 2.1.3-怎么了
- 正在从页面中删除iframe
- 如何从 HTML 查询中删除项目
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 在不知道深度或父属性的情况下从对象中删除属性
- 似乎无法使用javascript从AWS 3S中删除密钥
- 正在从Instagram图片源中删除链接
- 从所有元素中删除HTML5验证
- 从多选列表中删除
- 如何检查元素的内容是否为空,如果为空,请在jquery中删除该元素
- IE在将字符串转换为日期时从日期中删除4小时
- 从组件状态的数组中删除元素
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- Mongoose-在更新中删除数组元素
- 如何从对象中删除属性
- 从数组中删除元素的最佳方法是:javascript/jquery
- JavaScript,JQuery.需要帮助才能获得'name'从我的JSON中删除
- 在特定条件下从存储在localStorage中的阵列中删除对象