你好, 我想知道如何改变我的鼠标事件 ,因为我想X.Caption激活只有当我右键点击它。 非常感谢你如何改变事件[XTK]
回答
如果我是正确的(其他贡献者,不要害怕纠正我),您可能需要编辑XTK的内部,以满足您的需求。 XTK拥有在X.event.js
中定义的“控件”,因为它是从Google Closure库中获取的事件,如HoverEvent
和PanEvent
。您可以更多地关注Google Closure资料库,因为我还没有完全查看它,但X.caption
大部分来自Goog.ui.Tooltip
,可用于Goog.ui.Popup
,Goog.ui.PopupBase
和Goog.events
的活动。您可以尝试将Goog.events
添加到您的Javascript中,并定义您自己的点击事件或与之相关的内容,然后再查看Google Closure库。
如果我刚刚在上面的小段落中所写的内容不完全正确或者类似的话,那么当然有基本的Javascript DOM事件用于点击。我不太确定那些将如何与XTK一起工作,因为XTK使用WebGL进行渲染。您可以在http://www.w3schools.com/jsref/dom_obj_event.asp查看基本活动。如果您为自己找到任何解决方案,欢迎您将其贡献给XTK。
我觉得有太多的方法没有?更改xtk源代码并编译您自己的版本或类似如下内容:
window.onload = function() {
myrenderer.config.HOVERING_ENABLED = false; // disabling show caption on mousehover
var mouse_x, mouse_y;
myrenderer.interactor.onMouseMove = function(event) {
mouse_x = event.offsetX;
mouse_y = event.offsetY;
}
myrenderer.interactor.onMouseDown = function(left,middle, right) {
if (right) {
var picked_id = myrenderer.pick(mouse_x, mouse_y);
if (picked_id==-1) throw new Error("No object");
var picked_object = myrenderer.get(picked_id);
var mycontainer = myrenderer.container;
var caption = new X.caption(mycontainer,mycontainer.offsetLeft + mouse_x + 10, mycontainer.offsetTop + mouse_y + 10,myrenderer.interactor);
caption.setHtml(picked_object.caption);
// use settimeout or something else to destroy the caption
}
}
}
以下JSFiddle显示了如何执行此操作。要实际显示工具提示等,您可以使用任何JS库,如jQuery UI。
JSfiddle很酷,但在Chrome上有一个小故障,一旦我杀死该标题/工具提示,并且它悬停在画布上,画布仍然认为你按住鼠标右键并开始从XTK交互中放大和缩小。 – Karijuana 2012-08-08 19:41:43
- 1. Fullcalendar:如何改变eventclick事件标题
- 2. 如何改变点击事件的类
- 3. JavaScript:如何改变事件的顺序?
- 4. 改变事件的
- 5. DTPicker改变事件
- 6. 你如何改变同一事件的事件激发顺序?
- 7. @ Html.TextBoxFor文本改变事件
- 8. GWTP模型改变事件
- 9. 事件,当DIV改变
- 10. Canjs改变了事件
- 11. 改变事件的GWT
- 12. office.js小区改变事件
- 13. 在改变事件Ext.form.DateField
- 14. 的UIDatePicker事件改变
- 15. 了解Angular2改变事件
- 16. 如何控制已经改变,如何中断mouseUp事件
- 17. xtk和jquery问题
- 18. xtk对象转换
- 19. 的变化当事件改变
- 20. windows.location.href改变而handelng MutationObserver突变事件
- 21. 与变化事件不会改变
- 22. 如何可视化XTK中的远程url访问vtk文件?
- 23. 如何在GridView改变RowDataBound事件一个eval()字段
- 24. 如何检查其属性的PropertyChanged事件改变
- 25. 如何改变parentNode风格上childNode事件属性
- 26. 如何实现下拉列表改变事件捕捉功能
- 27. 如何绑定到JavaScript事件的DOM改变
- 28. 如何触发输入字段中的事件随javascript改变
- 29. 如何在变量值更改时触发事件?
- 30. 如何按钮单击事件后改变gridview的行值
不要忘记通过XTK的内部看,因为他们可以比网上发布提问更加有用。对于你的问题,查看'X.event.js','X.interactor.js'和'X.caption.js'。 – Karijuana 2012-07-30 20:20:30