以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 SVG/GML/VRML/X3D/XAML 』 (http://bbs.xml.org.cn/list.asp?boardid=21) ---- 如何编写自定义右键菜单,并且触发自定义事件!!!求助~~~ (http://bbs.xml.org.cn/dispbbs.asp?boardid=21&rootid=&id=34451) |
-- 作者:upc2neiep -- 发布时间:6/16/2006 8:35:00 AM -- 如何编写自定义右键菜单,并且触发自定义事件!!!求助~~~ 我看了前面的几个例子,一些只能触发SVG本身的函数,根本不能触发自定义事件 比如下面的zoomin事件(本来是ZoomIn) <?xml version="1.0" encoding="UTF-8"?> <menu id="myCustomMenu"> <header>Adobe SVG Viewer</header> <item action="zoomin" id="zoomin">zoom in </item> <item action="ZoomOut" id="ZoomOut">Zoom Out</item> <item action="OriginalView" id="OriginalView">Original View</item> <separator/> <item action="Quality" id="Quality">Higher Quality</item> <item action="Pause" id="Pause">Pause</item> <item action="Mute" id="Mute">Mute</item> <separator/> <item action="Find" id="Find">Find...</item> <item action="FindAgain" id="FindAgain">Find Again</item> <separator/> <item action="Copy" id="Copy">Copy Selected Text</item> <item action="CopySVG" id="CopySVG">Copy SVG</item> <item action="ViewSVG" id="ViewSVG">View SVG</item> <item action="ViewSource" id="ViewSource">View Source</item> <item action="SaveAs" id="SaveAs">Save SVG As...</item> <separator/> <item action="Help" id="Help">Help</item> <item action="About" id="About">About Adobe SVG Viewer...</item> </menu> 再者右键菜单出现的时候,第一次总是出现系统菜单,以后出现的才是自定义菜单,怎么修改?以前看见一个说用“evt.preventDefault();”但是这样的话,菜单都不出现了 function popmenu(evt) { if (evt.button==2) { //evt.preventDefault(); getURL("menu.xml", menuLoaded); } } function menuLoaded(data)
|
-- 作者:upc2neiep -- 发布时间:6/16/2006 8:51:00 AM -- 还有如何通过滚轴实现自定义缩放,帮帮忙 谢谢了 好像不能捕捉滚轴一样 左键evt.button=0; 右键evt.button=2; 滚轴怎么也滚不出来 555555555555555
|
-- 作者:tamefox -- 发布时间:6/24/2006 6:07:00 PM -- 你要是在用的时候才动态添加,肯定是第一次出现系统右键菜单,第二次才出现你加载的菜单,唯一的办法就是在使用之前,该菜单已经载入内存,反正我是这么做的,至于滚轴,你可以看这里相关的帖子,mrx已经解决了,找她的帖子看看~ |
-- 作者:tamefox -- 发布时间:6/26/2006 2:13:00 PM -- 至于在使用之前,已经载入内存,意思是,例如将菜单的内容放到svg文件的defs元素中,这样加载svg文件时,就可以将菜单加入内存,这样你调用的时候,就会出现你定义的右键菜单。如下所示 ... <svg> <defs> <menu id="myCustomMenu"> <header>Adobe SVG Viewer</header> <item action="zoomin" id="zoomin">zoom in </item> <item action="ZoomOut" id="ZoomOut">Zoom Out</item> <item action="OriginalView" id="OriginalView">Original View</item> <separator/> <item action="Quality" id="Quality">Higher Quality</item> <item action="Pause" id="Pause">Pause</item> <item action="Mute" id="Mute">Mute</item> <separator/> <item action="Find" id="Find">Find...</item> <item action="FindAgain" id="FindAgain">Find Again</item> <separator/> <item action="Copy" id="Copy">Copy Selected Text</item> <item action="CopySVG" id="CopySVG">Copy SVG</item> <item action="ViewSVG" id="ViewSVG">View SVG</item> <item action="ViewSource" id="ViewSource">View Source</item> <item action="SaveAs" id="SaveAs">Save SVG As...</item> <separator/> <item action="Help" id="Help">Help</item> <item action="About" id="About">About Adobe SVG Viewer...</item> </menu> </defs> ... </svg> 至于如何触发自定义的函数,则可以把自定义的函数放在各图形元素的onmousedown,onclick,onmouseover中,这样执行相应操作时,就会调用自定义的相应的函数。 不知道是否解释清楚了 |
-- 作者:upc2neiep -- 发布时间:6/26/2006 2:52:00 PM -- 谢谢了
[此贴子已经被作者于2006-7-24 7:36:34编辑过]
|
-- 作者:fourfire -- 发布时间:6/26/2006 6:21:00 PM -- <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20000802//EN" "http://www.w3.org/TR/2000/CR-SVG-20000802/DTD/svg-20000802.dtd"> <svg width="600" height="400"> var target; if(evt.button==2) target=evt.getTarget(); stroke-width="5" onmousedown="onmousedown(evt)"/>
|
-- 作者:woaimmwwyy -- 发布时间:3/25/2009 1:56:00 PM -- 楼主可以发个XML实现右键菜单的例子学习下吗? 小弟刚学,先谢谢了 |
-- 作者:woaimmwwyy -- 发布时间:3/25/2009 2:10:00 PM -- 我的邮箱是:woaimmwwyy@gmail.com 麻烦发过来学习下 |
-- 作者:wangyi041 -- 发布时间:12/7/2012 11:17:00 AM -- wangyi041@126.com 谢谢了 能发我一份吗? |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
62.500ms |