最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Javascript實例教程(19) 使用HoTMetal(4)

 更新時間:2006年12月23日 00:00:00   作者:  
HoTMetal中使用javascript

4. 怎樣編寫文檔格式的腳本

下面舉個宏的例子:根據(jù)預定義的頁面的布置準則來格式化文檔。為了觀察這個宏的效應,請關(guān)閉Enable Source Layout(允許源程序布局)按鈕,具體從菜單中選擇Tools(工具)->Customization(定制)。我們首先打開應用程序來初始化一些全局的變量。另外宏的名字必須為n_Application_Open,具體的代碼如下:

<MACRO name="On_Application_Open" lang="JScript"><![CDATA[

var viewWYSIWYG = 0;

var viewTagsOn = 1;

var viewSource = 2;

]]></MACRO>

這個宏必須在打開HoTMetaL應用程序的時候才被調(diào)用。它唯一的目的就是定義三個常數(shù),這些常數(shù)用于其它的宏。這些常數(shù)只是代表了三個相應的HoTMetaL視圖。操作HoTMetaL的編輯窗口的左邊按鈕邊角上的窗口標簽,你可以看到WYSIWYG(即所見即所得)視圖,TagsOn視圖和源程序視圖。

下面得宏是檢查當前視圖是否是源視圖并且根據(jù)預定義的準則格式化整個文檔。如果視覺圖不是源視圖,一個消息就會打印出來顯示給用戶,并且告訴用戶切換視圖,代碼如下:

<MACRO name="Format Current Document" lang="JScript" id="153" desc="Apply source layout to entire document">

<![CDATA[

if (ActiveDocument.ViewType == viewSource) {

ActiveDocument.Layout();

}

else {

Application.Alert("Applying source layout only works in source view.\nSwitch to source view and try again.");

}

]]></MACRO>

這里要注意,我們在這里已經(jīng)使用了兩個HotMetaL的對象:ActiveDocument 和 Application。這個Layout()方法格式化了當前文檔。而Alert()方法彈出了一個警告方框。
好吧,現(xiàn)在讓我們來測試一下這個宏。請在HotTMetaL中打開一個文檔并將視圖切換到源程序視圖。你可以在ProgGuide目錄中選擇其中一段。并且通過使用Tools(工具)->Customization(定制)關(guān)閉Enable Source Layout按鈕。接著將其中一行用加入空格往右移,再從工具菜單中調(diào)用宏對話框。這時會展現(xiàn)出定義在HotMetaL.mcr文件的宏的列表。然后運行Refresh Macros宏來裝載你剛才編輯的新的宏。你將會看到Format Current Document (格式當前文檔)宏。你可以運行它并且注意那個縮進的行回到它的原位置。接下來我們測試一下Alert()方法?,F(xiàn)在將視圖切換到TagsOn視圖并再次運行宏,會彈出如圖1的對話框:



(圖1)

現(xiàn)在假設你想格式化文檔中所選擇的部分。這個請求的宏(稱為Format Current Selection)跟上面所述的宏(Format Current Document)很類似。它們之間的不同只是在:Format Current Document中 Layout()方法是操作ActiveDocument 對象,而Format Current Selection中 Layout()方法是操作Selection對象:

<MACRO name="Format Current Selection" lang="JScript" id="53" desc="Apply source layout to the current selection">

<![CDATA[

if (ActiveDocument.ViewType == viewSource) {

Selection.Layout();

} else{

Application.Alert("Applying source layout only works in source view.\nSwitch to source view and try again.");

}

]]></MACRO>
下面讓我們好好看看上面這個宏是如何工作的。我們在打開的文檔中縮進了兩行。第一行是以”does not specify”開頭的,而另外一句是以"referred to in this ma:"開頭的。如圖2所示:



(圖2)

現(xiàn)在我們選擇三行,這三行包括了以"does not specify:"開頭的行,如圖3所示:



(圖3)

最后我們點擊中在窗口左上角上的綠色箭頭,接著宏的名字(Format Current Selection)就顯示在下拉菜單的窗口中,如圖4所示:



(圖4)

值得一提的是,被選擇的行已經(jīng)被格式化為原來的段落邊界。以"referred to in this ma"為開頭的第二行保持縮進狀態(tài)而沒有被格式化。

相關(guān)文章

  • javascript真的不難-回顧一下基礎(chǔ)知識

    javascript真的不難-回顧一下基礎(chǔ)知識

    先來學習一下Javascript語言中的基礎(chǔ)知識問題其時對于每種編程語言來說基礎(chǔ)知識都是大同小異的,對變量,函數(shù),條件語句塊,循環(huán)語句塊等等,本文簡要介紹一下,感興趣的朋友可以了解下
    2013-01-01
  • Knockout text綁定DOM的使用方法

    Knockout text綁定DOM的使用方法

    本文講解Knockout text綁定到DOM元素上,使得該元素顯示的文本值為你綁定的參數(shù)。該綁定在顯示<span>或者<em>上非常有用,可以用在任何元素上
    2013-11-11
  • 深入了解javascript中的prototype與繼承

    深入了解javascript中的prototype與繼承

    本篇文章,小編將和大家一起深入了解javascript中的prototype與繼承,有需要的朋友可以參考一下
    2013-04-04
  • 淺談ECMAScript6新特性之let、const

    淺談ECMAScript6新特性之let、const

    下面小編就為大家?guī)硪黄獪\談ECMAScript6新特性之let、const。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 最新評論

    祁连县| 南溪县| 陆丰市| 巴彦县| 改则县| 山东省| 治县。| 柘城县| 庆元县| 铁岭市| 济阳县| 家居| 兴城市| 玉门市| 天津市| 东丰县| 阿城市| 永平县| 祁门县| 金昌市| 永春县| 黄骅市| 饶平县| 石泉县| 瑞昌市| 黎平县| 石城县| 巨野县| 张家川| 潍坊市| 泾川县| 宣武区| 会理县| 噶尔县| 页游| 宁蒗| 苏尼特左旗| 阿鲁科尔沁旗| 青川县| 中山市| 潼南县|