2011-03-30 94 views
0

我必須編寫一個網頁註釋器。 我的要求如下:給定一組網頁html頁面註釋器

1),我想有效地加以註釋(在瀏覽器中,在如何呈現HTML外部應用程序等)

2 )我選擇(突出顯示,使活動)手動一串文本,並出現下拉菜單,允許從一組選項中選擇

3)之後,迭代器出現(就像在瀏覽器中按Ctrl + F時搜索),我希望能夠瀏覽在上一步中選擇的字符串匹配,在同一頁上

4)字符串的比較函數給出具有接口:給定兩個字符串,它輸出1或0,具體取決於字符串匹配

5)當我按迭代器按鈕時,我移動到下一個匹配的選定字符串,然後出現一個消息框(或任何其他可以確認它是真實匹配的東西)

6)確認它是一個真正的匹配項,頁面的文本應該被修改,使得當前匹配被特殊標記包圍 (例如< < < optionX >>>匹配文本< < </optionX >>>),其中optionX被定義爲ba sed在第一步選擇的值(下拉菜單)

5)當在頁面上找到所有匹配項(由比較函數定義)時,我想在同一頁上標記另一個文本字符串,然後重複這個過程中,通過查找所有的比賽,證實其中的一些,和修改網頁源相應

6),那麼修改後的頁面應該存儲在本地驅動器上

問題: 能否請您提出什麼正確的工具來做到這一點?

1)可以使用JavaScript並在瀏覽器中工作。如果是的話,那麼需要什麼方法,是否有任何有用的庫可以做到這一點,或至少包括上述某些功能

2)也許是更好地構建自定義桌面應用程序,呈現一個頁面在一個特殊的框架,並有相應的按鈕來瀏覽,確認等(Python或C#被認爲是),並再次什麼類和庫可以幫助

[更新]:

我知道如何與合作一個頁面的內容,但我很好奇如何讓註釋器使用它變得舒適,如何與用戶建立正確的對話框:如何讓所有的糖果,如下拉菜單和用戶可見的迭代器,d ialog確認等

目標是用很多頁面註釋,因此接口應該是有效的。我是一名研究員(這不像你想象的那樣是功課,我只是以正式的方式描述了需要的東西),而且我只有很差的經驗來編寫面向用戶的應用程序。

預先感謝您!

+1

這看起來像功課... – Neal 2011-03-30 21:11:56

+2

沒有ü嘗試任何事情? – Neal 2011-03-30 21:12:33

+0

嗨,尼爾,這不是作業。我只想把它做得最好,這就是爲什麼我要求提出正確的方法。我明白,這肯定不是火箭科學在所有 – Ben 2011-03-31 00:18:54

回答

0

這絕對是一個網頁瀏覽器的工作。您可以使用JQuery來搜索和修改html頁面。這個例子會發現homework所有出現,改變文字<<homework>>

$("*").each(function() { 
    if ($(this).children().length == 0) { 
    $(this).text($(this).text().replace('homework','<<homework>>')); 
    } 
}); 
+0

cander,感謝您的答覆。儘管可能應該更關注這個問題。我知道如何處理頁面的內容,但我很好奇如何讓註釋者使用它,以及如何與用戶建立正確的對話框:如何讓所有的糖果,如下拉菜單和迭代器對用戶來說是可見的,等等。目標是用很多頁面進行註釋,因此界面應該是高效的。我是一名研究員,而且我只有很差的經驗來編寫面向用戶的應用程序。謝謝 – Ben 2011-03-31 02:01:51

+0

對不起,這對整個'家庭作業'來說有點苛刻。我會建議看看[jquery ui](http://jqueryui.com)。爲了保持你註釋的頁面的內容,我會用JavaScript編寫所有的用戶界面的東西,也許使用主jQuery UI對話框'$('

....all my text annotating tools
').dialog()'做所有的頁面編輯和註釋。通過這種方式,您可以在對話框關閉並從頁面中移除後執行保存操作,因此您可以執行一個簡單的'.post('/ mypagesavingservice',{html:$('html')})來保存編輯頁面 – cander 2011-03-31 15:34:49

+0

cander,謝謝你的擴展版本。將嘗試破解。 – Ben 2011-03-31 16:40:31