Javascript中document.execCommand()的用法
其 中:sCommand为指令参数(如下例中的”2D-Position”),交互方式参数如果是true的话将显示对话框,如果为false的话,则不显 示对话框(下例中的”false”即表示不显示对话框),动态参数一般为一可用值或属性值(如下例中的”true”)。
调用execCommand()可以实现浏览器菜单的很多功能. 如保存文件,打开新文件,撤消、重做操作…等等. 有了这个方法,就可以很容易的实现网页中的文本编辑器.
使用的例子如下:
2、〖打开〗命令的实现
[格式]:document.execCommand(”open”)
[说明]这跟VB等编程设计中的webbrowser控件中的命令有些相似,大家也可依此琢磨琢磨。
[举例]在之间加入:
打开
4、〖打印〗命令的实现
[格式]:document.execCommand(”print”)
[说明]当然,你必须装了打印机!
[举例]在之间加入:
打印
//相当于单击文件中的打开按钮
document.execCommand(”Open”);
//剪贴选中的文字到剪贴板;
document.execCommand(”Cut”,”false”,null);
//改变选中区域的字体;
document.execCommand(”FontName”,”false”,sFontName);
//设置前景颜色;
document.execCommand(”ForeColor”,”false”,sColor);
//使对象定位变成绝对定位;
document.execCommand(”AbsolutePosition”,”false”,”true”);
//使选中区域的文字加粗;
document.execCommand(”Bold”,”false”,null);
//设置指定锚点为书签;
document.execCommand(”CreateBookmark”,”false”,sAnchorName);
//设置当前块的标签名;
document.execCommand(”FormatBlock”,”false”,sTagName);
//将当前页面另存为
document.execCommand(”SaveAs”);
//删除选中的文字;
document.execCommand(”Delete”,”false”,null);
//改变选中区域的字体大小;
document.execCommand(”FontSize”,”false”,sSize|iSize);
//使绝对定位的对象可直接拖动;
document.execCommand(”2D-Position”,”false”,”true”);
//设置背景颜色;
document.execCommand(”BackColor”,”false”,sColor);
//复制选中的文字到剪贴板;
document.execCommand(”Copy”,”false”,null);
//将选中文本变成超连接,若第二个参数为true,会出现参数设置对话框;
document.execCommand(”CreateLink”,”false”,sLinkURL);
document对象execCommand通常在IE中在线处理Html数据时非常有用,它可以让你轻而易举实现文字的加粗、加颜色、加字体等一系列的命令。
关于document.execCommand:
要 执行编辑命令,可调用 document.execCommand,并传递对应于命令 ID 的字符串。另外还有可选的第二个参数,该参数指定如果可以应用的话是否显示此命令的用户界面。传递整数 1 将显示用户界面,整数 0 将跳过它。这个参数通常不用于编辑命令。因为默认值为 0,所以假如您没有使用第三个参数(在这种情况下,还必须为第二个参数传递值),一般可以不管它。第三个参数也是可选的,在可应用的情况下,使用它来将任 何所需参数传递给该命令。
用这种方法甚至避免了api调用,貌似是直接缓存在IE内存中。
做过UI设计和开发的人一定知道,IE(不包括IE7)会经常从服务器端重新载入背景图片,好端端的UI界面在IE(不包括IE7)中就这样被折腾着……
document.execCommand(”BackgroundImageCache”, false, true);
今天阅读Ext的源码时发现Jack Slocum已经考虑到了这一点,在Ext.js中给出了他的实现,在其它Ajax框架中应该还没有这种类似的代码,从这一个细节上就能看出Ext的全面~
程序代码 程序代码
windows.isIE=navigator.appName.indexOf("Microsoft")==0;
if(isIE){
document.documentElement.addBehavior("#default#userdata");
document.execCommand("BackgroundImageCache",false,true);
浙公网安备 33010602011771号