JP4626366B2 - 関数の利用方法及び関数利用プログラム - Google Patents

関数の利用方法及び関数利用プログラム Download PDF

Info

Publication number
JP4626366B2
JP4626366B2 JP2005106644A JP2005106644A JP4626366B2 JP 4626366 B2 JP4626366 B2 JP 4626366B2 JP 2005106644 A JP2005106644 A JP 2005106644A JP 2005106644 A JP2005106644 A JP 2005106644A JP 4626366 B2 JP4626366 B2 JP 4626366B2
Authority
JP
Japan
Prior art keywords
frame
function
content
web page
definition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005106644A
Other languages
English (en)
Other versions
JP2006285780A (ja
Inventor
岳史 藤田
勉 河内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005106644A priority Critical patent/JP4626366B2/ja
Publication of JP2006285780A publication Critical patent/JP2006285780A/ja
Priority to US12/251,870 priority patent/US8387008B2/en
Application granted granted Critical
Publication of JP4626366B2 publication Critical patent/JP4626366B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • G06F16/986Document structures and storage, e.g. HTML extensions

Description

本発明は、親子関係を有する複数のフレームにコンテンツを表示する端末装置に用いられる関数の利用方法等に関する。
従来、端末装置は、ウェブブラウザの画面を複数のフレームに分割してそれぞれのフレームに外部の情報提供システムから受信したウェブページを表示することができた。そして、これら複数のフレームに表示されたウェブページ(例えば、HTMLファイル、DHTMLファイル等)は、Java(登録商標)スクリプト等の所定のスクリプトで記述されたプログラムを含むことができた。ここで、端末装置は、ウェブブラウザを介して当該プログラムを解釈して実行し、そのGUI(Graphical User Interface)等を所定のフレームに表示するようになっている。
上記従来例では、端末装置が、フレームに表示された所定のプログラム(例えば、電卓機能を提供するプログラム等)のGUIを介して所定の関数の実行要求を受付けた場合に、当該プログラムを含むウェブページに予め格納された関数の定義に基づいて所定の処理を行う。
これによると、一のフレームで利用される関数の定義を変更しても、別のフレームで利用される関数には影響を与えない。すなわち、フレーム毎に独立して関数の定義を変更して利用することができる。
一方、別の態様として、各フレームで利用される関数の定義を一つのjsファイル等の外部ファイルに格納し、当該格納された関数の定義を各フレームで利用する方法も知られている。
上記態様の従来例では、端末装置が、各フレームに表示されたウェブページに記述された「<script>」タグに基づいて、外部の情報提供システムからjsファイルをダウンロードする。そして、端末装置は、当該ダウンロードしたjsファイルに格納された関数の定義と、上記「<script>」タグが記述されたウェブページを表示するフレームを識別するフレーム識別子と関連付けてRAM等の記憶装置に記憶する。
ここで、上記「<scritp>」タグが記述されたウェブページに、jsファイルに格納された関数と同一名称の関数の定義が格納されている場合には、端末装置は、当該ウェブページに格納されている関数の定義と、当該ウェブページを表示するフレームに対応するフレーム識別子とを関連付けてRAM等の記憶装置に記憶する。
図17は、例えば、フレーム0、フレーム1、及びフレーム3に表示するウェブページの「<script>」タグにより関数の定義としての「funcA(x)=x」が格納された一つのjsファイルが指定され、かつ、フレーム3に表示するウェブページに関数の定義としての「funcA(x)=x+1」が格納された場合における、記憶装置としてのRAMに記憶された情報を概念的に示す図である。
端末装置は、フレームに表示された所定のプログラムのGUIを介して所定の関数の実行要求を受付けた場合に、RAMに格納された当該フレームに対応するフレーム識別子に関連付けられた関数の定義に基づいて所定の処理を行う。
これによると、各フレームで利用可能な共通関数を提供することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができる。
しかし、上記従来例においては、各フレームで関数を共有して利用することができなかった。
これらについて記載された先行技術文献を出願人は知らない。
本発明は、かかる従来例の有する不都合を改善し、特に、各フレームで関数を共有して利用することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができることを課題とする。
上記課題を解決するため、本発明では次のような構成を採っている。
本発明は、親子関係を有する複数のフレームにコンテンツを表示する端末装置に用いられる関数の利用方法である。上記端末装置は、入力装置、表示装置、記憶装置、及び処理装置を備えている。そして、記憶装置に、フレームを識別するフレーム識別子と、当該フレームに表示するコンテンツとを関連付けて記憶するコンテンツ格納領域を備えている。さらに、記憶装置に、フレーム識別子と、当該フレーム識別子に対応するフレームを子フレームとする親フレームのフレーム識別子とを関連付けて記憶する。そして、処理装置は、フレームに表示されたコンテンツを介して所定の関数の実行要求を入力装置から受付ける。続いて、処理装置は、実行要求のあった関数の定義を当該コンテンツから検索する。そして、処理装置は、当該コンテンツに実行要求のあった関数の定義がない場合に、当該コンテンツに関連付けられたフレーム識別子をコンテンツ格納領域から読み出し、当該読み出したフレーム識別子に関連付けられた親フレームのフレーム識別子を記憶装置から読み出し、当該読み出した親フレームのフレーム識別子に関連付けられたコンテンツをコンテンツ格納領域から読み出す。また、処理装置は、実行要求のあった関数の定義を当該読み出したコンテンツから検索する。続いて、処理装置は、上記検索処理を、実行要求のあった関数の定義が見つかるまで繰り返す。そして、処理装置は、上記読み出したコンテンツに実行要求のあった関数の定義があった場合に、当該関数の定義に基づいて所定の処理を行う。
本発明の別の態様は、所定の関数の定義をコンテンツに関連付けられた外部ファイルに格納することを特徴とした上記関数の利用方法である。
本発明の別の態様は、上記端末装置に用いられる関数利用プログラムである。そして、当該関数利用プログラムを実行する上記端末装置の処理装置は以下の処理を実行する。処理装置は、フレームに表示されたコンテンツを介して所定の関数の実行要求が入力装置から入力されたとき、実行要求のあった関数の定義を当該コンテンツから検索する。続いて、処理装置は、当該コンテンツに実行要求のあった関数の定義がない場合に、当該コンテンツに関連付けられたフレーム識別子をコンテンツ格納領域から読み出し、当該読み出したフレーム識別子に関連付けられた親フレームのフレーム識別子を記憶装置から読み出し、当該読み出した親フレームのフレーム識別子に関連付けられたコンテンツをコンテンツ格納領域から読み出す。また、処理装置は、実行要求のあった関数の定義を当該読み出したコンテンツから検索する。続いて、処理装置は、上記検索処理を、実行要求のあった関数の定義が見つかるまで繰り返す。そして、処理装置は、上記読み出したコンテンツに実行要求のあった関数の定義があった場合に、当該関数の定義に基づいて所定の処理を行わせる。
端末装置の処理装置が、実行要求のあった関数の定義が見つかるまで、実行要求を受付けたフレームに対応するフレーム識別子に関連付けられたコンテンツ及び当該フレームの上位に属するフレームに対応するフレーム識別子に関連付けられたコンテンツから実行要求のあった関数の定義を検索するので、各フレームで関数を共有して利用することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができる。
以下、図面を参照しながら、本発明の実施形態について説明する。
〔実施形態1〕
図1は、本実施形態のコンピュータシステムの全体構成を示すブロック図である。
コンテンツを閲覧するための端末装置10と、コンテンツを提供するための情報提供システム20とが、通信ネットワークとしてのインターネット30に接続されている。ここで、図1では、1台の端末装置10のみがインターネット30に接続されているが、複数台の端末装置10がインターネット30に接続されていてもよい。また、端末装置10及び情報提供システム20と、インターネット30との接続は有線であるか無線であるかを問わない。
図2は、端末装置10の構成図である。
処理装置としてのCPU12、記憶装置としてのRAM13、ROM14、及びHDD19(Hard Disk Drive)、入力装置としてのキーボード16及びマウス17、表示装置としてのディスプレイ18並びに通信装置としてのNIC15(Network Interface Card)が、バス11に接続されている。HDD19には、一般的なウェブブラウザのプログラムが記憶されている。端末装置10のCPUは、ウェブブラウザのプログラムを実行することにより、情報提供システム20が提供するコンテンツとしてのウェブページをディスプレイに表示するようになっている。本実施形態では、端末装置10として一般的なPC(Personal Computer)を採用しているが、PDA(Personal Digital Assistance)、インターネット接続機能を有する携帯電話等であってもよい。
図3は、情報提供システム20の構成図である。
処理装置としてのCPU22、記憶装置としてのRAM23、ROM24、及びHDD26並びに通信装置としてのNIC25(Network Interface Card)が、バス21に接続されている。HDD26には、情報提供プログラムと、コンテンツとしてのウェブページ0、ウェブページ1及びウェブページ2を記憶している。情報提供システム20のCPUは、情報提供プログラムを実行することにより、閲覧要求のあったコンテンツを端末装置10に提供するようになっている。情報提供プログラムとしては、「Apatch(登録商標)」、「IIS(登録商標)」等が該当する。
図4は、コンテンツとしてのウェブページ0の構造図である。
ウェブページ0は、他のウェブページに含まれるプログラム(スクリプト)で利用される関数(以下、共通関数という。)の定義を格納している。図4では、ウェブページ0は、共通関数としての「funcA()」、「funcB()」及び「funcC()」の定義を格納している。また、ウェブページ0は、フレームを識別するフレーム識別子と、コンテンツを識別するコンテンツ識別子とを関連付けて格納している。フレーム識別子としては、例えば、フレームの名称等が該当する。また、コンテンツ識別子としては、例えば、URL(Uniform Resource Locator)等が該当する。図4では、ウェブページ0は、フレーム識別子としての「フレーム1」と、コンテンツ識別子としての「ウェブページ1のURL」とを関連付けて格納している。さらに、ウェブページ0は、ウェブページを構成するテキスト、アンカー等のその他の情報を格納している。ここで、上記共通関数の定義は、外部ファイルとしての「jsファイル」に格納するようにしてもよい。
端末装置10のCPUは、情報提供システム20から受信したウェブページ0に基づいて、ウェブブラウザを介して、フレーム1を含むウェブページ0を表示すると共に、当該フレーム1にウェブページ1を表示するようになっている。
図5は、コンテンツとしてのウェブページ1の構造図である。
ウェブページ1は、フレーム識別子としての「フレーム2」と、コンテンツ識別子としての「ウェブページ2のURL」とを関連付けて格納している。また、ウェブページ1は、ウェブページを構成するテキスト、アンカー等のその他の情報を格納している。
端末装置10のCPUは、情報提供システム20から受信したウェブページ1に基づいて、ウェブブラウザを介して、フレーム2を含むウェブページ1を表示すると共に、当該フレーム2にウェブページ2を表示するようになっている。
図6は、コンテンツとしてのウェブページ2の構造図である。
ウェブページ2は、関数利用プログラムを格納している。本実施形態では、関数利用プログラムは、Java(登録商標)スクリプト等の所定のスクリプトで記述されている。端末装置10のCPUは、ウェブブラウザを介して当該関数利用プログラムを実行することにより、所定の関数を実行するようになっている。さらに、ウェブページ2は、ウェブページを構成するテキスト、アンカー等のその他の情報を格納している。
端末装置10のCPUは、情報提供システム20から受信したウェブページ2に基づいて、ウェブブラウザを介して、関数利用プログラムのGUI(Graphical User Interface)を表示するようになっている。
次に、本実施形態のコンピュータシステムの動作について説明する。
図7は、コンテンツを表示する際における、端末装置10及び情報提供システム20のフローチャートである。
端末装置10のCPUは、キーボードからウェブページ0に対応する所定のURLを受付ける。そして、端末装置10のCPUは、受付けたURLに基づいて、ウェブブラウザを介して情報提供システム20にウェブページ0の閲覧要求を送信する(S10)。
情報提供システム20のCPUは、ウェブページ0の閲覧要求を受信する。そして、情報提供システム20のCPUは、当該閲覧要求のあったウェブページ0を端末装置10に送信する(S15)。
端末装置10のCPUは、ウェブページ0を受信する。そして、端末装置10のCPUは、ウェブページ0を表示するフレームのフレーム識別子を「フレーム0」として、当該フレーム識別子と、ウェブページ0とを関連付けてコンテンツ格納領域としてのRAMに記憶する(S20)。また、端末装置10のCPUは、受信したウェブページ0をキャッシュファイルとしてHDDに記憶するようになっている。
さらに、端末装置10のCPUは、受信したウェブページ0に基づいて、フレーム間の親子関係を決定する。本実施形態では、ウェブページ0は、フレーム識別子としての「フレーム1」を格納している。また、前述した通り、フレーム識別子としての「フレーム0」は、ウェブページ0と関連付けられている。よって、端末装置10のCPUは、フレーム識別子としての「フレーム1」と、当該フレーム識別子に対応するフレーム1を子フレームとする親フレームのフレーム識別子としての「フレーム0」とを関連付けてRAMに記憶する(S25)。そして、端末装置10のCPUは、ウェブブラウザを介して、フレーム1を含むウェブページ0をディスプレイに表示する(S30)。
続いて、端末装置10のCPUは、受信したウェブページ0に格納されたフレーム識別子と、当該フレーム識別子に関連付けられたコンテンツ識別子とに基づいて、当該コンテンツ識別子に対応するコンテンツの取得要求を情報提供システム20に送信する。本実施形態では、ウェブページ0は、フレーム識別子としての「フレーム1」と、コンテンツ識別子としての「ウェブページ1のURL」とを関連付けて格納しているので、端末装置10のCPUは、ウェブページ1の取得要求を情報提供システム20に送信する(S35)。
情報提供システム20のCPUは、ウェブページ1の取得要求を受信する。そして、情報提供システム20のCPUは、当該取得要求のあったウェブページ1を端末装置10に送信する(S40)。
端末装置10のCPUは、ウェブページ1を受信する。そして、端末装置10のCPUは、RAMからウェブページ0を読み出す。端末装置10のCPUは、当該読み出したウェブページ0に格納されたフレーム識別子と、当該フレーム識別子に関連付けられたコンテンツ識別子とに基づいて、フレーム識別子としての「フレーム1」と、ウェブページ1とを関連付けてコンテンツ格納領域としてのRAMに記憶する(S45)。また、端末装置10のCPUは、受信したウェブページ1をキャッシュファイルとしてHDDに記憶するようになっている。
さらに、端末装置10のCPUは、受信したウェブページ1に格納されたフレーム識別子と、当該フレーム識別子に関連付けられたコンテンツ識別子とに基づいて、フレーム間の親子関係を決定する。本実施形態では、ウェブページ1は、フレーム識別子としての「フレーム2」を格納している。また、前述した通り、フレーム識別子としての「フレーム1」は、ウェブページ1と関連付けられている。よって、端末装置10のCPUは、フレーム識別子としての「フレーム2」と、当該フレーム識別子に対応するフレーム2を子フレームとする親フレームのフレーム識別子としての「フレーム1」とを関連付けてRAMに記憶する(S50)。そして、端末装置10のCPUは、ウェブブラウザを介して、フレーム2を含むウェブページ1をフレーム1に表示する(S55)。
続いて、端末装置10のCPUは、受信したウェブページ1に格納されたフレーム識別子と、当該フレーム識別子に関連付けられたコンテンツ識別子とに基づいて、当該コンテンツ識別子に対応するコンテンツの取得要求を情報提供システム20に送信する。本実施形態では、ウェブページ1は、フレーム識別子としての「フレーム2」と、コンテンツ識別子としての「ウェブページ2のURL」とを関連付けて格納しているので、端末装置10のCPUは、ウェブページ2の取得要求を情報提供システム20に送信する(S60)。
情報提供システム20のCPUは、ウェブページ2の取得要求を受信する。そして、情報提供システム20のCPUは、当該取得要求のあったウェブページ2を端末装置10に送信する(S65)。
端末装置10のCPUは、ウェブページ2を受信する。そして、端末装置10のCPUは、RAMからウェブページ1を読み出す。端末装置10のCPUは、当該読み出したウェブページ1に格納されたフレーム識別子と、当該フレーム識別子に関連付けられたコンテンツ識別子とに基づいて、フレーム識別子としての「フレーム2」と、ウェブページ2とを関連付けてコンテンツ格納領域としてのRAMに記憶する(S70)。また、端末装置10のCPUは、受信したウェブページ2をキャッシュファイルとしてHDDに記憶するようになっている。そして、端末装置10のCPUは、ウェブブラウザを介して、フレーム2にウェブページ2を表示する。ここで、端末装置10のCPUは、ウェブページ2に格納された関数利用プログラム(スクリプト)に基づいて、ウェブブラウザを介して、関数利用プログラムのGUIを表示するようになっている。
図8は、ウェブページ0、ウェブページ1及びウェブページ2をウェブブラウザの画面に表示した図である。また、図9は、上記処理が実行された後のRAMに記憶された情報を概念的に示す図である。
図10は、関数利用プログラムを実行する端末装置10のフローチャートである。
端末装置10のCPUは、フレーム2に表示されたウェブページ2の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数としての「funcA()」の実行要求を受付ける(S80)。ここで、端末装置10のCPUは、入力装置から、タイマーイベント、コンテンツとしてのウェブページ上のイベント(例えば、Flash(登録商標)等からのJava(登録商標)scriptキック、IFRAME等のフレームに表示されるウェブページの読込み完了)を受付けたことを契機として、上記関数の実行要求を受付けてもよい。そして、端末装置10のCPUは、ウェブページ2から実行要求のあった関数としての「funcA()」の定義を検索する(S85)。ここで、前述の通り、ウェブページ2は、関数としての「funcA()」の定義を格納していない。端末装置10のCPUは、ウェブページ2に関数としての「funcA()」の定義の定義が格納されていないので、ウェブページ2に関連付けられたフレーム識別子としての「フレーム2」をRAMから読み出し、当該読み出したフレーム識別子としての「フレーム2」に関連付けられた親フレームのフレーム識別子としての「フレーム1」をRAMから読み出す(S90)。続いて、端末装置10のCPUは、当該読み出したフレーム識別子としての「フレーム1」に関連付けられたコンテンツとしてのウェブページ1をRAMから読み出す。
端末装置10のCPUは、当該読み出したウェブページ1から実行要求のあった関数としての「funcA()」の定義を検索する(S100)。ここで、前述の通り、ウェブページ1は、関数としての「funcA()」の定義を格納していない。端末装置10のCPUは、ウェブページ1に関数としての「funcA()」の定義の定義が格納されていないので、ウェブページ1に関連付けられたフレーム識別子としての「フレーム1」をRAMから読み出し、当該読み出したフレーム識別子としての「フレーム1」に関連付けられた親フレームのフレーム識別子としての「フレーム0」をRAMから読み出す(S105)。続いて、端末装置10のCPUは、当該読み出したフレーム識別子としての「フレーム0」に関連付けられたコンテンツとしてのウェブページ0をRAMから読み出す(S110)。
端末装置10のCPUは、当該読み出したウェブページ0から実行要求のあった関数としての「funcA()」の定義を検索する(S115)。ここで、前述の通り、ウェブページ0は、共通関数としての「funcA()」の定義を格納している。端末装置10のCPUは、ウェブページ0に格納された共通関数としての「funcA()」の定義に基づいて所定の処理を行う(S120)。
これによると、各フレームで関数を共有して利用することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができる。
特に、関数のインスタンス(実体)を共通化することで、関数そのものを共有することができると共に、当該関数で利用される変数を共有することができる。このため、各フレームに表示されるウェブページに含まれるアプリケーションプログラムから、例えば、クリップボード機能を実装した一つの関数にアクセスすることができる。さらに、フレーム間でファイルの属性等の値を共有することで、フレームに表示されるウェブページに含まれるアプリケーションプログラム(スクリプト)のプロセス間の連携(例えば、ファイル等のドラッグアンドドロップ)が可能となる。
〔実施形態2〕
本実施形態では、実施形態1において、コンテンツとしてのウェブページ2の構造のみを変更している。
図11は、本実施形態におけるコンテンツとしてのウェブページ2の構造図である。
ウェブページ2は、当該ウェブページに含まれるプログラム(スクリプト)で利用される関数の定義としての「funcA()」を格納している。ここで、当該関数としての「funcA()」の名称(関数識別子)は、前述したウェブページ0に格納された共通関数としての「funcA()」の名称と同一である。また、ウェブページ2は、関数利用プログラムを格納している。本実施形態では、関数利用プログラムは、Java(登録商標)スクリプト等の所定のスクリプトで記述されている。端末装置10のCPUは、ウェブブラウザを介して当該関数利用プログラムを実行することにより、所定の関数を実行するようになっている。さらに、ウェブページ2は、ウェブページを構成するテキスト、アンカー等のその他の情報を格納している。
次に、本実施形態のコンピュータシステムの動作について説明する。但し、コンテンツを表示する際における、端末装置10及び情報提供システム20のフローチャートについては、実施形態1と同様であるので説明を省略する。
図12は、本実施形態における関数利用プログラムを実行する端末装置10のフローチャートである。
端末装置10のCPUは、フレーム2に表示されたウェブページ2の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数としての「funcA()」の実行要求を受付ける(S130)。そして、端末装置10のCPUは、ウェブページ2から実行要求のあった関数としての「funcA()」の定義を検索する(S135)。ここで、前述の通り、ウェブページ2は、関数としての「funcA()」の定義を格納している。端末装置10のCPUは、ウェブページ2に格納された関数としての「funcA()」の定義に基づいて所定の処理を行う(S140)。
これによると、各フレームで関数を共有して利用することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができる。
特に、各フレームに表示されるウェブページに含まれるアプリケーションプログラム(スクリプト)に基づく端末装置の動作を、当該フレーム又はその上位に属するフレームに表示するウェブページに格納された関数の定義により、制御することが可能となる。
上記実施形態1及び実施形態2では、端末装置10のCPUが、外部の情報提供システム20からコンテンツを受信しているが、当該コンテンツを端末装置10のHDDに予め記憶しておいてもよい。この場合には、図9で端末装置10のRAMに記憶された情報をHDDに予め記憶しておいてもよい。また、コンテンツは特にウェブページである必要はないので、本願発明による関数利用プログラムは、コンテンツと分離して端末装置10のHDDに予め記憶しておいてもよい。さらに、関数の定義も、コンテンツと分離して端末装置10のHDDに予め記憶しておいてもよい。
以上で説明したように、本願発明によれば、各フレームで関数を共有して利用することができると共に、必要に応じて各フレーム毎に独立して当該関数の定義を再定義して利用することができる。
特に、関数のインスタンス(実体)を共通化することで、関数そのものを共有することができると共に、当該関数で利用される変数を共有することができる。このため、各フレームに表示されるウェブページに含まれるアプリケーションプログラムから、例えば、クリップボード機能を実装した一つの関数にアクセスすることができる。さらに、フレーム間でファイルの属性等の値を共有することで、フレームに表示されるウェブページに含まれるアプリケーションプログラム(スクリプト)のプロセス間の連携(例えば、ファイル等のドラッグアンドドロップ)が可能となる。
また、関数の定義はその記載量が非常に大きくなることがあるが、最上位のフレームに表示するウェブページにのみ共通関数の定義を格納することで、当該関数を利用するアプリケーションプログラム(スクリプト)を含むウェブページの容量を小さくすることができると共に、関数を一元管理することもできる。
さらに、特定のフレーム(ウィンドウ)に表示するウェブページにおいて、フレームの制御(例えば、フレームの配置等)に関する関数の定義を再定義することによって、DHTML(Dynamic HTML)を利用した自由配置のフレームにおいて、フレームを規則正しく並べるように変更することもできる。
以下、本願発明の実施例について詳細に説明する。ここで、コンピュータシステムの全体構成については、前述の実施形態1と同じなので説明を省略する。
図13は、端末装置10のCPUが、ウェブブラウザの画面をフレーム0、フレーム1及びフレーム2の3つのフレームに分割し、各フレームにそれぞれウェブページ0、ウェブページ1、ウェブページ2を表示した状態を示す図である。
ここで、ウェブページ0には、関数の定義としての「var g_n=0;function set(v){g_n=v;} function get(){return g_n;}」が格納されている。また、ウェブページ2及びウェブページ3には、前述したJava(登録商標)スクリプトで記述された関数利用プログラムが格納されている。さらに、ウェブページ1及びウェブページ2には、関数の定義は格納されていないものとする。そして、ウェブページ0には、「<IFRAME>」タグにより、フレーム識別子としての「フレーム1」と、コンテンツ識別子としての「ウェブページ1のURL」とを関連付けて格納すると共に、フレーム識別子としての「フレーム2」と、コンテンツ識別子としての「ウェブページ2のURL」とを関連付けて格納しているものとする。
端末装置10のCPUは、前述の実施形態1により開示された方法で、フレーム識別子としての「フレーム0」と、コンテンツとしての「ウェブページ0」とを関連付けてRAMに記憶する。より詳細には、ウェブページ0には、関数の定義としての「var g_n=0;function set(v){g_n=v;} function get(){return g_n;}」が格納されているので、端末装置10のCPUは、フレーム識別子としての「フレーム0」と、関数のインスタンス(実体)としての「set(v)」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム0」と、関数のインスタンス(実体)としての「get()」とを関連付けてRAMに記憶する。また、端末装置10のCPUは、フレーム識別子としての「フレーム1」と、コンテンツとしての「ウェブページ1」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム2」と、コンテンツとしての「ウェブページ2」とを関連付けてRAMに記憶する。
また、端末装置10のCPUは、前述の実施形態1により開示された方法でフレームの親子関係を決定する。本実施例では、端末装置10のCPUは、フレーム識別子としての「フレーム1」と、当該フレーム識別子に対応するフレーム1を子フレームとする親フレームのフレーム識別子としての「フレーム0」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム2」と、当該フレーム識別子に対応するフレーム2を子フレームとする親フレームのフレーム識別子としての「フレーム0」とを関連付けてRAMに記憶する。図14は、上記処理が実行された後のRAMに記憶された情報を概念的に示す図である。
〔関数get()を実行した場合〕
端末装置10のCPUは、フレーム1に表示されたウェブページ1の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数のインスタンスとしての「get()」の実行要求を受付ける。そして、端末装置10のCPUは、前述した実施形態1に開示された方法で、フレーム識別子としての「フレーム0」に関連付けられた関数のインスタンスとしての「get()」を実行し、その戻り値として「0」を得る。
同様に、端末装置10のCPUは、フレーム2に表示されたウェブページ2の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数のインスタンスとしての「get()」の実行要求を受付ける。そして、端末装置10のCPUは、前述した実施形態1に開示された方法で、フレーム識別子としての「フレーム0」に関連付けられた関数のインスタンスとしての「get()」を実行し、その戻り値として「0」を得る。
〔関数set(v)を実行した後に関数get()を実行した場合〕
一方、端末装置10のCPUは、フレーム1に表示されたウェブページ1の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数のインスタンスとしての「set(1)」の実行要求を受付ける。そして、端末装置10のCPUは、前述した実施形態1に開示された方法で、フレーム識別子としての「フレーム0」に関連付けられた関数のインスタンスとしての「set(1)」を実行する。これにより、端末装置10のCPUは、関数のインスタンスとしての「get()」の戻り値としての「g_n」の値を「1」とし、フレーム識別子としての「フレーム0」と、当該関数のインスタンスとしての「get()」とを関連付けてRAMに記憶する。
続いて、端末装置10のCPUは、フレーム1又はフレーム2に表示されたウェブページの関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数のインスタンスとしての「get()」の実行要求を受付ける。そして、端末装置10のCPUは、前述した実施形態1に開示された方法で、フレーム識別子としての「フレーム0」に関連付けられた関数のインスタンスとしての「get()」を実行し、その戻り値として「1」を得る。
これによると、関数のインスタンス(実体)を共通化することで、関数そのものを共有することができると共に、当該関数で利用される変数を共有することができるので、フレーム間でのデータの連携が容易となる。
以下、本願発明の別の実施例について詳細に説明する。ここで、コンピュータシステムの全体構成については、前述の実施形態1と同じなので説明を省略する。
図15は、端末装置10のCPUが、ウェブブラウザの画面をフレーム0、フレーム1、フレーム2及びフレームAの4つのフレームに分割し、各フレームにそれぞれウェブページ0、ウェブページ1、ウェブページ2、ウェブページAを表示した状態を示す図である。
ここで、ウェブページ0、ウェブページ1及びウェブページ2に格納される関数は実施例1と同様であるので、説明を省略する。ウェブページAには、関数の定義としての「function get(){return=999}」が格納されている。
また、ウェブページ0には、フレーム識別子としての「フレーム1」と、コンテンツ識別子としての「ウェブページ1のURL」とを関連付けて格納すると共に、フレーム識別子としての「フレームA」と、コンテンツ識別子としての「ウェブページAのURL」とを関連付けて格納しているものとする。さらに、ウェブページAには、フレーム識別子としての「フレーム2」と、コンテンツ識別子としての「ウェブページ2のURL」とを関連付けて格納しているものとする。
端末装置10のCPUは、前述の実施形態1により開示された方法で、フレーム識別子としての「フレーム0」と、コンテンツとしての「ウェブページ0」とを関連付けてRAMに記憶する。より詳細には、ウェブページ0には、関数の定義としての「var g_n=0;function set(v){g_n=v;} function get(){return g_n;}」が格納されているので、端末装置10のCPUは、フレーム識別子としての「フレーム0」と、関数のインスタンス(実体)としての「set(v)」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム0」と、関数のインスタンス(実体)としての「get()」とを関連付けてRAMに記憶する。また、端末装置10のCPUは、フレーム識別子としての「フレーム1」と、コンテンツとしての「ウェブページ1」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム2」と、コンテンツとしての「ウェブページ2」とを関連付けてRAMに記憶する。さらに、端末装置10のCPUは、フレーム識別子としての「フレームA」と、コンテンツとしての「ウェブページA」とを関連付けてRAMに記憶する。より詳細には、ウェブページAには、関数の定義としての「function get(){return=999}」が格納されているので、端末装置10のCPUは、フレーム識別子としての「フレームA」と、当該関数のインスタンス(実体)としての「get()」とを関連付けてRAMに記憶する
また、端末装置10のCPUは、前述の実施形態1により開示された方法でフレームの親子関係を決定する。本実施例では、端末装置10のCPUは、フレーム識別子としての「フレーム1」と、当該フレーム識別子に対応するフレーム1を子フレームとする親フレームのフレーム識別子としての「フレーム0」とを関連付けてRAMに記憶すると共に、フレーム識別子としての「フレーム2」と、当該フレーム識別子に対応するフレーム2を子フレームとする親フレームのフレーム識別子としての「フレームA」とを関連付けてRAMに記憶する。さらに、端末装置10のCPUは、フレーム識別子としての「フレームA」と、当該フレーム識別子に対応するフレームAを子フレームとする親フレームのフレーム識別子としての「フレーム0」とを関連付けてRAMに記憶する。図16は、上記処理が実行された後のRAMに記憶された情報を概念的に示す図である。
端末装置10のCPUは、フレーム2に表示されたウェブページ2の関数利用プログラムのGUIを介して、マウスにより所定のボタンがクリックされたことを契機として、関数のインスタンスとしての「get()」の実行要求を受付ける。そして、端末装置10のCPUは、前述した実施形態1に開示された方法で、フレーム識別子としての「フレームA」に関連付けられた関数のインスタンスとしての「get()」を実行し、その戻り値として「999」を得る。
これによると、フレーム2に表示するウェブページ2を変更することなく、当該ウェブページに含まれる関数利用プログラムに基づく端末装置の動作を、その上位に属するフレームAに表示するウェブページAに格納された関数の定義により、制御することが可能となる。
コンピュータシステムの全体構成を示すブロック図である。 端末装置の構成図である。 情報提供システムの構成図である。 ウェブページ0(コンテンツ)の構造図である。 ウェブページ1(コンテンツ)の構造図である。 ウェブページ2(コンテンツ)の構造図である。 コンテンツを表示する際における、端末装置及び情報提供システムのフローチャートである。 ウェブページ0、ウェブページ1及びウェブページ2をウェブブラウザの画面に表示した図である。 RAMに記憶された情報を概念的に示す図である。 実施形態1における関数利用プログラムを実行する端末装置のフローチャートである。 実施形態2におけるウェブページ2(コンテンツ)の構造図である。 実施形態2における関数利用プログラムを実行する端末装置のフローチャートである。 実施例1における、ウェブページ0、ウェブページ1及びウェブページ2をウェブブラウザの画面に表示した図である。 実施例1における、RAMに記憶された情報を概念的に示す図である。 実施例2における、ウェブページ0、ウェブページ1、ウェブページ2及びウェブページAをウェブブラウザの画面に表示した図である。 実施例2における、RAMに記憶された情報を概念的に示す図である。 従来例におけるRAMに記憶された情報を概念的に示す図である。
符号の説明
10 端末装置
11 バス
12 CPU(処理装置)
13 RAM(記憶装置)
14 ROM(記憶装置)
15 NIC(通信装置)
16 キーボード(入力装置)
17 マウス(入力装置)
18 ディスプレイ(表示装置)
19 HDD(記憶装置)
20 情報提供システム
21 バス
22 CPU(処理装置)
23 RAM(記憶装置)
24 ROM(記憶装置)
25 NIC(通信装置)
26 HDD(記憶装置)
30 インターネット(通信ネットワーク)

Claims (3)

  1. 親子関係を有する複数のフレームにコンテンツを表示する端末装置に用いられる関数の利用方法であって、
    前記端末装置が、入力装置、表示装置、記憶装置、及び処理装置を備え、
    前記記憶装置に、
    フレームを識別するフレーム識別子と、当該フレームに表示するコンテンツとを関連付けて記憶するコンテンツ格納領域を備え、さらに、
    前記フレーム識別子と、当該フレーム識別子に対応するフレームを子フレームとする親フレームのフレーム識別子とを関連付けて記憶すると共に、
    前記処理装置が、
    a)フレームに表示されたコンテンツを介して所定の関数の実行要求を入力装置から受付けるステップと、
    b)実行要求のあった関数の定義を当該コンテンツから検索するステップと、
    c)当該コンテンツに実行要求のあった関数の定義がない場合に、
    当該コンテンツに関連付けられたフレーム識別子を前記コンテンツ格納領域から読み出し、当該読み出したフレーム識別子に関連付けられた親フレームのフレーム識別子を記憶装置から読み出し、当該読み出した親フレームのフレーム識別子に関連付けられたコンテンツを前記コンテンツ格納領域から読み出すステップと、
    d)前記実行要求のあった関数の定義を当該読み出したコンテンツから検索するステップと、
    e)前記cステップ及び前記dステップを、前記実行要求のあった関数の定義が見つかるまで繰り返すステップと、
    f)前記読み出したコンテンツに前記実行要求のあった関数の定義があった場合に、当該関数の定義に基づいて所定の処理を行うステップと、
    を実行することを特徴とした関数の利用方法。
  2. 前記所定の関数の定義をコンテンツに関連付けられた外部ファイルに格納することを特徴とした請求項1記載の関数の利用方法。
  3. 請求項1記載の端末装置に用いられる関数利用プログラムであって、
    前記処理装置に、
    g)フレームに表示されたコンテンツを介して所定の関数の実行要求が入力装置から入力されたとき、実行要求のあった関数の定義を当該コンテンツから検索するステップと、
    h)当該コンテンツに実行要求のあった関数の定義がない場合に、
    当該コンテンツに関連付けられたフレーム識別子を前記コンテンツ格納領域から読み出し、当該読み出したフレーム識別子に関連付けられた親フレームのフレーム識別子を記憶装置から読み出し、当該読み出した親フレームのフレーム識別子に関連付けられたコンテンツを前記コンテンツ格納領域から読み出すステップと、
    i)前記実行要求のあった関数の定義を当該読み出したコンテンツから検索するステップと、
    j)前記hステップ及び前記iステップを、前記実行要求のあった関数の定義が見つかるまで繰り返すステップと、
    k)前記読み出したコンテンツに前記実行要求のあった関数の定義があった場合に、当該関数の定義に基づいて所定の処理を行わせるステップと、
    を実行させることを特徴とした関数利用プログラム。
JP2005106644A 2005-04-01 2005-04-01 関数の利用方法及び関数利用プログラム Expired - Fee Related JP4626366B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005106644A JP4626366B2 (ja) 2005-04-01 2005-04-01 関数の利用方法及び関数利用プログラム
US12/251,870 US8387008B2 (en) 2005-04-01 2008-10-15 Method for sharing a function between web contents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005106644A JP4626366B2 (ja) 2005-04-01 2005-04-01 関数の利用方法及び関数利用プログラム

Publications (2)

Publication Number Publication Date
JP2006285780A JP2006285780A (ja) 2006-10-19
JP4626366B2 true JP4626366B2 (ja) 2011-02-09

Family

ID=37407623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005106644A Expired - Fee Related JP4626366B2 (ja) 2005-04-01 2005-04-01 関数の利用方法及び関数利用プログラム

Country Status (2)

Country Link
US (1) US8387008B2 (ja)
JP (1) JP4626366B2 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2454290C (en) * 2003-12-29 2013-05-21 Ibm Canada Limited-Ibm Canada Limitee Graphical user interface (gui) script generation and documentation
US20110302558A1 (en) * 2009-02-24 2011-12-08 Brilliant Susan S System and Method for Constructing an Application Using Distributed Functionalities
US9195840B2 (en) 2012-04-23 2015-11-24 Google Inc. Application-specific file type generation and use
US8751493B2 (en) 2012-04-23 2014-06-10 Google Inc. Associating a file type with an application in a network storage service
US9148429B2 (en) 2012-04-23 2015-09-29 Google Inc. Controlling access by web applications to resources on servers
US9262420B1 (en) 2012-04-23 2016-02-16 Google Inc. Third-party indexable text
US20150212694A1 (en) * 2012-05-02 2015-07-30 Google Inc. Internet browser zooming
US9286276B2 (en) * 2012-06-11 2016-03-15 Google Inc. System and method of document embedding in collaborative editors
US9317709B2 (en) 2012-06-26 2016-04-19 Google Inc. System and method for detecting and integrating with native applications enabled for web-based storage
US9529785B2 (en) 2012-11-27 2016-12-27 Google Inc. Detecting relationships between edits and acting on a subset of edits
US9430578B2 (en) 2013-03-15 2016-08-30 Google Inc. System and method for anchoring third party metadata in a document
WO2014160934A1 (en) 2013-03-28 2014-10-02 Google Inc. System and method to store third-party metadata in a cloud storage system
US9461870B2 (en) 2013-05-14 2016-10-04 Google Inc. Systems and methods for providing third-party application specific storage in a cloud-based storage system
US9971752B2 (en) 2013-08-19 2018-05-15 Google Llc Systems and methods for resolving privileged edits within suggested edits
US9348803B2 (en) 2013-10-22 2016-05-24 Google Inc. Systems and methods for providing just-in-time preview of suggestion resolutions
US10581989B2 (en) * 2015-07-30 2020-03-03 Nasdaq, Inc. Application logging framework

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060130034A1 (en) * 2004-12-15 2006-06-15 Michael Beisiegel Apparatus, system, and method for providing access to a set of resources available directly to a particular class loader

Also Published As

Publication number Publication date
US8387008B2 (en) 2013-02-26
JP2006285780A (ja) 2006-10-19
US20090083707A1 (en) 2009-03-26

Similar Documents

Publication Publication Date Title
JP4626366B2 (ja) 関数の利用方法及び関数利用プログラム
US8069223B2 (en) Transferring data between applications
JP4525358B2 (ja) コンテンツを公開又は非公開とする方法、情報提供システム及び情報提供プログラム
CN102857369B (zh) 一种网站日志保存系统及方法和装置
JP4935413B2 (ja) アップロード用アドインプログラム、アップロード用補助プログラム及びアップロード方法
CN105095280A (zh) 一种浏览器缓存方法和装置
KR20060041883A (ko) 데이터로의 액세스를 용이하게 하는 시스템
EP2437184A1 (en) Host apparatus and method of displaying content by the same
US7349893B2 (en) Hierarchical user interface query automation
CN102253986A (zh) 提高多终端网页显示效果的方法和装置
KR101330559B1 (ko) 자바스크립트기반 웹-클라이언트 어플리케이션 프레임워크 장치와 상기 프레임워크 장치를 이용한 웹 컨텐츠 처리 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체
JP2006004136A (ja) Htmlファイル処理方法及びプログラム
KR102060660B1 (ko) 웹 브라우징 서비스를 제공하는 방법 및 장치
WO2015079527A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP5809099B2 (ja) Web閲覧画面サムネイル生成システム
CN110362305A (zh) 一种表单组件状态切换方法及装置
JP5774429B2 (ja) 通信装置および通信方法、ならびに、プログラム
JP2010041401A (ja) 中継装置、通信中継方法、そのプログラム、及び中継システム
JP2010277478A (ja) 表示制御プログラム、情報処理装置および方法
US20090024560A1 (en) Method and apparatus for having access to web page
JP2009048332A (ja) ウェブページ閲覧装置
US8639732B2 (en) Method for storing and reading-out data handled by application operating on HTTP client, data storage program, and data read-out program
CN117251653A (zh) 一种页面渲染方法、装置、电子设备和存储介质
CN114036419A (zh) 网页图片资源处理方法及装置
US20090089302A1 (en) Method to generate linkage indicative data, computer usable medium therefor, and printing apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080331

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20090630

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090630

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101012

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101025

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees