Javascript实例教程(19) 使用HoTMetal(6)


Posted in Javascript onDecember 23, 2006

HoTMetal中使用javascript

6.怎样编写一个保存模块脚本

在本节教程的例子中,我们创建了一个新的保存模块文件对话框。HoTMetaL里面有几个模板你可以从中进行选择。模板只是一个普通的网页,这个网页被保存HoTMetaL应用程序目录的Template模板中。当你从文件菜单中选择新项目的时候,其中一个标签选项是Page From Template。当你选择了它,就会弹出一个标签对话框,上面包含了各种模板: General、 WebTV、 W3C、 Frame Pages、 Layout。

你可以通过保存当前文件到Template目录下的一个目录来创建一个新的模板。下面的宏,即Save As 模板,向你展示了怎样使用HMExtras.FileDlg的DisplayFileDlg方法创建一个Save As对话框。这个对话框使用Template目录作为缺省的位置,以下是详细的代码:

<MACRO name="Save As Template" lang="JScript" id="90"><![CDATA[

var obj = new ActiveXObject("HMExtras.FileDlg");

var filter = "Web Page Template (*.htm, *.html)|*.htm;*.html|All Files (*.*)|*.*||";

if (obj.DisplayFileDlg(0, "File Save As", filter, Application.Path + "\\Template")) {

ActiveDocument.SaveAs(obj.FullPathName, true); // save and put on recent file list

}

]]></MACRO>

下面解释一下上面的代码:首先,我们利用HMExtras库的FileDlg COM对象来创建一个ActiveX 控件:

var obj = new ActiveXObject("HMExtras.FileDlg");

接着利用几个条目来创建一个过滤器:

var filter = "Web Page Template (*.htm, *.html)|*.htm;*.html|All Files (*.*)|*.*||";

然后我们通过调用obj.DisplayFileDlg来显示文件对话框,最后我们在如果对话框存在的时候保存文件。
HoTMetal中使用Javascript

6.怎样编写一个保存模块脚本

让我们增加第一个Save As 模板宏到文件菜单中。你可以点击文件菜单条并选择定制。接着选择菜单标签并导航到你想增加新的宏的地方去。点击Add Submenu(增加子菜单)按钮并填充缺少的项。对话框如图1所示。

Javascript实例教程(19) 使用HoTMetal(6)

(图1)

下面我们测试一下这个菜单项以及宏是如何工作的。拉下文件菜单,你可以看到多了一个Save模板项,点击它,你可以得到如图2的对话框:

Javascript实例教程(19) 使用HoTMetal(6)

找到你希望保存文件的目录并给出文件名字,点击Save按钮确认。

Javascript 相关文章推荐
Jquery Ajax学习实例3 向WebService发出请求,调用方法返回数据
Mar 16 Javascript
JavaScript基础语法让人疑惑的地方小结
May 23 Javascript
jquery Ajax 实现加载数据前动画效果的示例代码
Feb 07 Javascript
JavaScript数组前面插入元素的方法
Apr 06 Javascript
JavaScript动态设置div的样式的方法
Dec 26 Javascript
JS打印组合功能
Aug 04 Javascript
前端框架Vue.js构建大型应用浅析
Sep 12 Javascript
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
Jul 08 jQuery
vue+jquery+lodash实现滑动时顶部悬浮固定效果
Apr 28 jQuery
推荐15个最好用的JavaScript代码压缩工具
Feb 13 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
Oct 31 Javascript
vue制作toast组件npm包示例代码
Oct 29 Javascript
Javascript实例教程(19) 使用HoTMetal(5)
Dec 23 #Javascript
Javascript实例教程(19) 使用HoTMetal(4)
Dec 23 #Javascript
Javascript实例教程(19) 使用HoTMetal(3)
Dec 23 #Javascript
Javascript实例教程(19) 使用HoTMetal(2)
Dec 23 #Javascript
Javascript实例教程(19) 使用HoTMetal(1)
Dec 23 #Javascript
用于自动添加Digg This!按钮的JavaScript
Dec 23 #Javascript
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
Dec 22 #Javascript
You might like
PHP 函数学习简单小结
2010/07/08 PHP
通过PHP修改Linux或Unix口令的方法分享
2012/01/30 PHP
PHP的几个常用数字判断函数代码
2012/04/24 PHP
简单的cookie计数器实现源码
2013/06/07 PHP
php调用KyotoTycoon简单实例
2015/04/02 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
一些有用的JavaScript和jQuery的片段分享
2011/08/23 Javascript
jquery实现图片渐变切换兼容ie6/Chrome/Firefox
2013/08/02 Javascript
HTML,CSS,JavaScript速查表推荐
2014/12/02 Javascript
JavaScript使用DeviceOne开发实战(二) 生成调试安装包
2015/12/01 Javascript
pc加载更多功能和移动端下拉刷新加载数据
2016/11/07 Javascript
Vue插件写、用详解(附demo)
2017/03/20 Javascript
详解Angular-cli生成组件修改css成less或sass的实例
2017/07/27 Javascript
Vue.js 时间转换代码及时间戳转时间字符串
2018/10/16 Javascript
webpack中如何使用雪碧图的示例代码
2018/11/11 Javascript
[46:00]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第一局
2016/03/03 DOTA
[40:03]Liquid vs Optic 2018国际邀请赛淘汰赛BO3 第一场 8.21
2018/08/22 DOTA
python使用socket进行简单网络连接的方法
2015/04/29 Python
安装dbus-python的简要教程
2015/05/05 Python
KMP算法精解及其Python版的代码示例
2016/06/01 Python
Centos下实现安装Python3.6和Python2共存
2018/08/15 Python
Python 实现递归法解决迷宫问题的示例代码
2020/01/12 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
在python中对于bool布尔值的取反操作
2020/12/11 Python
HTML5 与 XHTML2
2008/10/17 HTML / CSS
检测浏览器对HTML5和CSS3支持度的方法
2015/06/25 HTML / CSS
奥地利网上书店:Weltbild
2017/07/14 全球购物
奥林匹亚体育:Olympia Sports
2020/12/30 全球购物
幼儿园中秋节活动反思
2014/02/16 职场文书
廉洁自律承诺书
2014/03/27 职场文书
食品安全工作方案
2014/05/07 职场文书
Elasticsearch 数据类型及管理
2022/04/19 Python