如何动态修改属性(onmouseover)
kinetic js - how do I modify attributes dynamically (onmouseover)
我有以下代码,但是位置不随鼠标悬停而变化-我错过了什么?
function drawOverlay() {
var stage = new Kinetic.Stage({container: 'overlay'});
var layer = new Kinetic.Layer();
var rect = new Kinetic.Rect({
x: 239, y: 75,
width: 100, height: 50,
fill: 'green', stroke: 'black', strokeWidth: 4
});
rect.on('mouseover', function(e) {rect.setPosition({x: 50, y: 5 0});});
layer.add(rect);
stage.add(layer);
}
这里有两个问题:
- 你的y值有一个空格:"50"vs。"50",这会导致javascript解析错误。
- 改变节点位置后需要重新绘制图层
那么试试这个:
rect.on('mouseover', function(e) {
rect.setPosition({x: 50, y: 50});
layer.draw();
});
相关文章:
- 如何通过JQuery修改样式属性
- 在运行时修改innerhtml属性
- 通过emberJS中的控制器修改组件的属性
- HTML&JS-如何修改CSS类的属性
- js添加封装来修改属性值
- 检查所有元素的属性并修改另一个元素
- 选择单选输入时修改占位符属性
- Lodash搜索对象属性并修改值
- 复选框的checked属性的修改不会;工作不正常
- JavaScript-我可以用for循环中修改的属性将新结构推送到数组中吗
- 修改时,哪些DOM元素属性会导致浏览器执行回流操作
- 有没有一种方法可以在一次调用中修改每个jquery对象的特定属性
- 从 React 中的自定义元素中修改属性
- AngularJS:修改指令中的transcluded属性键
- 如何使用 jQuery 修改属性 ROWSPAN
- 使用javascript修改属性文件
- 在jQuery中修改属性的最短方法
- 如何动态修改属性(onmouseover)
- Angular 在 forEach 或纯 For 时修改属性
- angularJS如何在指令中修改属性link