专利名称:环境自适应网络浏览器的制作方法
技术领域:
本发明是关于一种用于自适应地定制网络浏览器的功能和能力的方法,实现该方法的系统,以及所获得的浏览器。其可以用于在用户观看一个网页时根据所观看的内容的属性以及由用户或赞助网址所设置的参数而剪裁用户可以使用的按键、特征和工具。其还可以用于增加在某些网页的可使用广告空间,也可以增加一个网页广告暴露时间。
背景技术:
大多数的用户通过执行具有用户图形接口(GUI)的操作系统的个人计算机来连接到互联网,例如使用Windows操作系统。一般上网时会使用一种叫做“浏览器”的程序。虽然说有许多一般的网络浏览器,但是最普遍的是Internet Explorer和Netscape。网络浏览器接收被称为HTML的格式的文件,此文件格式是一种标识语言,可以让多媒体嵌入格式化和按照固定格式的文本中。同时也可以使用许多其它编程语言,例如Javascript,其可以把可执行代码嵌入在一个HTML文档,并且当网页浏览器显示文件给用户时执行该代码。
所以互联网的用户会非常熟悉网络浏览器,就象是用于在互联网上冲浪的工具那样。在本发明之前,网络浏览器是固定的,不会改变它的功能和域环境展示方式。功能和工具可以通过改变网络浏览器的选项里或通过下载插件(plug-ins)和辅助应用程序来定制,但是它们不会动态地适应当前观看的网页和域例如用户行为和喜好这样的其他参数。
为了改善及最佳化互联网冲浪的体验,希望使得浏览器的布局、可使用的功能及工具适应于瞬间的环境,不必使用可下载、上载或常驻程序、插件或外挂程序。换句话说,希望调整网络浏览器自身以适应正在使用的环境,在浏览器工具栏提供不同的功能,而这些功能会依照不同的数据改变或调整,例如已经请求的网页、网页内容、人口统计分类、年龄、位置及其它由网络提供者已知或推断特性。这个改变会依照用户(浏览者)设定的因素或网络提供者或由内容或服务提供者授权的第三者推动的因素。
所描述的功能可以由浏览器提供者提供,该浏览器提供者可以被用户授权或不被授权通过浏览器定制和域附加广告于已浏览的网页和/或工具栏上而管理用户的浏览经验。
除了前面提到的功能,本发明的一个次要功能是可以提供定制的广告给用户。除了可以定制浏览器,很多种广告可以在该过程中出现。从按钮和条幅(banner)到丰富的媒体、Shoshkeles和赞助工具(sponsoredtools)。而且,可以允许把以前不被利用的屏幕固定空间用于商业使用中,例如工具栏;也可以由除了内容提供者之外的第三方,例如网络浏览器提供者用于商业化或赞助。
例如,用户可以选择在所有的浏览网页都有一个打印的按钮或是只在新闻网址。或者用户可能希望使得过滤色情内容、对该内容或所接收的数据查病毒对于一个网址或与该网址相关的第三方来说部分地或完全地不可见,以避免cookies加载计算机或改变环境设定网络浏览器和/或任何其它网络提供者可选择提供的过滤。
作为另一个例子该提供者依照所请求或观看的网址或内容选择全部或部分改变浏览器显示的环境图案和域材料;例如当浏览的网页是个儿童网页时在网页浏览器上设定一个功课按钮。在这个例子,功课按钮可以包括帮助儿童做功课的工具,例如计算器,辞典或是便条纸。也可以包括一个搜索器或是一个连接到用户和/或他的父母可以购买书本或其它产品的网址或网页。
另一个用途是包含插入的环境广告,不是像通常那样由内容提供者设定,而是由浏览器提供者设定。例如,当一个用户连接到一个特定网页或某一个有公司广告的网页时,例如花店,浏览器提供者可以选择在这个广告上或是屏幕其它地方,包含浏览区按钮,展示与这个卖方或其竞争者有关的广告,或是显示一个有声或无声的动画人物,例如ShoshkeleTM。作为另一个例子,当用户选择或检查购买一个产品或服务,例如机票,浏览器提供者可以选择在屏幕的最上方或是屏幕的任何一方提供一个另一个航空公司的较经济的类似机票。
从下文参照附图对说明性的优选实施例的详细描述中,上述简要说明以及本发明的其他目的、特点和优点将得到更加完整的理解,其中图1是根据本发明的用于产生可适应环境的网络浏览器的优选方法以及操作系统的流程图;图2是体现本发明的另一个方法以及提供可适应环境的浏览器的系统的操作的功能框图;图3-7是根据本发明的一个可适应环境的浏览器的使用及操作的示意屏幕快照;图8是利用该优选方法的环境的功能框图;以及图9是利用本发明的替代实施例的方法的环境功能框图。
具体实施例方式
图8显示本发明的第一实施例的环境。多个用户计算机U1...Un被连接到互联网I。多个服务器(计算机)S1...Sn也被连接到互联网I及可以让用户使用。其中一个服务器,例如Sn,提供一个网页Pn让浏览器用户使用,这个网页可以改变用户的浏览器成为一个可适应环境的网络浏览器。网页Pn有一个标签(一个从远程位置获得代码的指令)。该标签在用户访问网页Pn或点击网页上某一适当对象时会开启。在任何情况下,可执行代码被下载到用户计算机,当该计算机运行浏览器时,使得该浏览器变为一个可适应环境的浏览器。
可适应环境的网络浏览器,以下称为环境网络浏览器或“变形浏览器”,当用户请求开启一个HTML网页时提供与内容共同运作。本发明的优选实施例包括两个功能阶段(在图1中说明)环境浏览器的开启和该浏览器的操作。
环境浏览器的开启包括移除标准网页浏览器的工具栏和以一个定制的工具栏取代。这个动作依照被使用的不同浏览器引擎以不同方式进行。在Internet Explorer,优选方式包括-关闭或隐藏现有浏览器窗口;-开一个无边界或无工具栏的新窗口;-分割新窗口为两个窗口框一个上层框与一个下层框;和-把新的环境工具放置在上层框中,而下层框则保留用于显示网页。
如果浏览器是Netscape,则不用关闭现有窗口和开启新窗口就可移除标准工具栏。当工具栏移除后,接下来的步骤与Internet Explorer的步骤是相同的分个窗口为上下两层窗口框,放置新的环境工具在上层框,而下层则显示网页。
环境浏览器(CB)的开启开始于当用户进如一个有嵌入标签的网页(远程请求网页码时)。可以在图1的流程图里看到,标签的执行(框101)会检查CB是否已经开启(框102)。如果是的话,操作跳到框107,否则该操作进行到框103,检查正在使用哪一种浏览器。如果浏览器是Internet Explorer(IE),操作继续前往框105,而如果浏览器是Netscape,操作继续前往框106。
在105框(当浏览器是IE)执行几个动作开一个无边的窗口,关闭或隐藏原有窗口(根据浏览器的版本),新窗口会分割为上下层窗口框,环境工具栏会加载于上层窗口框及有CB标签的网页会加载于下层窗口框。
在框106(当浏览器是Netscape),从现有窗口移除工具栏,窗口被分割为上下层窗口框,环境工具栏会加载于上层窗口框及有CB标签的网页被加载于下层窗口框。
依照浏览器的不同能力,对这两个浏览器使用不同的方法。不管是使用哪个浏览器,在框107重新执行操作,包括TARGET参数(被调用的代码将被执行的位置的指定)的标签被设置为等于SELF的数值(指定在该标签的位置执行该代码)。这样避免TOP的数值(指定在该网页的上端执行)破坏该窗口框。在框108,网页被置于下层框,并且该处理在框109处结束。
为了赋予CB基本功能,必须替代导航工具栏,如上文所述那样除去工具栏,并由一个定制或环境化的工具栏取代。这个新的工具栏必须包含基本的浏览指令让用户可以浏览网络,但是也可以包含定制工具,例如游戏、聊天、瞬间短信、病毒扫描等等。表1是一个基本浏览功能清单,包含了操作系统的GUI单元,其必须被替换以向用户提供所期望的标准浏览器的特点。必须注意到,由于本发明的本质,这些因素是可以剪裁、重组、赞助、增加等等。
必须注意到有些功能是GUI的要点,因为要使用一个无边的窗口而被省略,必须取代标准窗口的操作;例如拖曳或缩小窗口的功能。
表1a)拖曳窗口b)缩小窗口c)放大窗口d)还原窗口e)重新整理/载入网页f)上一页g)下一页h)停止载入网页i)打印网页j)以电子邮件传送网页k)URL网址框与本发明有关的文件代码在附录A中给出。
图9是一个显示本发明的第二个实施例的环境的示意图。与图8相同,多个用户U1...Un连接到网络1,也有多个服务器。总共有三个服务器显示在图上广告服务器A、浏览器服务器C和一个内容提供者(服务器)P。在这个实施例中,用户通过登录到环境浏览器服务器(英文缩写CBS)然后开始获取一个环境浏览器。当这个服务器提供它的主页,其中包含一个链接,用户必须点击该链接才可获得一个环境浏览器。当然,到环境浏览器的链接也可以在第二个网页提供及当访问网页时自动开始。在任何时候,用户访问网页的请求会使得另一个含有可执行代码的网页被下载,以创建该浏览器。
参见图2的功能框图,其与适应环境浏览器的另一个实施例相关,可以看到用户200通过使用一般浏览器250与在环境浏览器主机(CBSS)210处的环境浏览器服务器通信而实现该功能。用户通过登录到环境浏览器提供者CBS 210的主页(图2的通信1)而开始该处理。CBS把它的主页HTML代码提供给用户(通信2),其中包含显示在该网页上的一个链接,以激活该环境浏览器。当用户点击环境浏览器的链接时,浏览器250在用户的计算机上以全屏幕方式打开一个新的HTML文档窗口260。对于窗口260,将变为该环境浏览器的HTML文档包含一个HTML代码请求用户定制的浏览工具及来自一个CBS的个人主页(通信3)。
使用从用户200接收的参数,CBS 210在数据库220得到用户的喜好(通信4),组合一个新的包含用于现有环境的定制工具的HTML文档,和一个用户个人主页在一个窗口框里。这个HTML文档之后会传回给用户(通信5),他的计算机收到和执行该文档,启动环境浏览器。
之后,每当用户请求一个网页时会发生两种情况中的一种情况。第一种,环境浏览器使用新的工具栏和功能,但是保持不变。在这个情况请求会直接到内容服务器240(通信6a),使得仅仅包含主页的窗口框被更新,而保留其他的HTML文档。在这个情况下,接下来所有请求的网页都会从内容服务器240传来,而显示于包含在CBS产生的HTML文档窗口框中。
第二种情况,环境浏览器260继续可以适应。用户200请求的内容被通过CBS 210(通信6a)转发。CBS然后向内容服务器240请求内容(通信7b)和分析数据例如用户的喜好、要看的内容及用户的习惯这样的可用数据,以决定哪些是适合现有活动的工具和布局。CBS 210之后根据在数据库220里收到的信息(通信9b)和从广告服务器230得到的选项数据(通信10b)和请求的内容组合在新HTML文档中;这个新文件被传给用户100(通信11b)。这将可以在未来定制工具栏,让CBS可以根据被观看的页面动态地改变提供给用户的特征组合。在这种情况中,不只是在显示新的网页时用户的窗框内容改变,而且整个HTML文档改变。
通过多个选取屏幕来举例说明一些本发明的功能。
图3是一个为America Online网页定制的浏览器窗口的选取屏幕,其中显示有一个Yahoo.com网页。这里传统工具栏的有些功能还在,但是,工具栏却已经高度定制了。
图4显示一个为Blockbuster网页定制的浏览器窗口,但显示一个Fox.com的网页。工具栏已经全部定制而下拉菜单已经开启以便显示最靠近的Blockbuster商店。
图5-7显示已为Yahoo.com定制的一个环境浏览器窗口。在工具栏显示着Yahoo商标。但是,用户是用Yahoo浏览器来浏览他的网络服务提供者的网页(America On Line)。在图6,用户进入了一个外国语言网页,浏览器已经察觉,并且提供一个翻译下拉菜单。在图7,用户进入了一个金融网页,而浏览器适应环境的在工具栏上显示不同的货币符号和出现一个可访问金融计算器的选项虽然本发明的优选形式已经被公开用于说明的目的,但是本领域的普通技术人员可以进行许多增加、修改或替换,而不会偏离本申请所定义的范围及精神。例如,本领域的普通技术人员将认识到本发明并不仅限于现有使用HTML语法的浏览器程序。本发明将等同处理任何类浏览器程序所设计出的多媒体页面。
附录A优选代码的描述a)检测CB,启动。
执行时,首先检测网页窗口是否为一个CB窗口如果不是,那么a)fullsrc改变窗口为一个CB范例窗口(屏幕上的窗口)如果是a)CBTM商标会活动起来b)一个功能会将连接中的TARGETS移除c)网页的url会加入地址栏IE浏览器版本<pre listing-type="program-listing"><![CDATA[ if(top==self){fullsrc(″frames.htm″);} else{top.topFrame.nube.src=srclenguaje+″_nubes.gif″;notarget();agregarurl();}]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[ var reopen=true; var ok_url=location.href; var param=ok_url.lastIndexOf(″?ilayer″); var ok_serve=true; var navUs=navigator.userAgent; varnavAp=navigator.appName; var sh_browser=((navUs.indexOf(″Opera″)!=-1)?″O″(navAp.indexOf(″Internet Explorer″)!=-1)?″E″(navAp.indexOf(″Netscape″)!=-1)?″N″″X″); if(sh_browser==″N″) { if(navUs.indexOf(″4.51″)!=-1)ok_serve=true;else if(navUs.indexOf(″4.5″)!=-1)ok_serve=false; if(param!=-1){ reopen=false; printPage();document.write(′<layer id=″Pantalla″bgcolor=″#DDDDDD″left=″0″top=″0″width=+window.innerWidth+height=+window.innerHeight+z-index=″1000″visibility=″show″>′+′<p><center><A HREF=″javascriptwindow.print();″><font face=Verdana color=#111111 size=2>re-print the Page</A>′+′<br><center><A HREF=″javascriptwindow.close();″><font face=Verdana color=#111111 size=2>Close this Window</fonr></A></center></p′ +′</layer>′); } if(top==self) { if(ok_serve)fullsrc(); else { top.location.href=″http//www.weather.com″; } } else {if(reopen){ document.captureEvents(Event.MOUSEDOWN); document.onmousedown=verlink;} } }]]></pre>如果是初次用户,必须千万小心管理所有窗口,一个新的包含两个窗口框的窗口将会打开。上层的会包含导航栏,下层的会显示网页。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[function fullsrc(url){if(document.all) {height_workspace=document.body.offsetHeight; top_out_workspace=window.top.screenTop; width_workspace=document.body.offsetwidth; left_out_workspace=window.top.screenLeft; //explorer 4 does not support this if(window.screenTop){top_out_workspace=window.top.screenTop;left_out_workspace=window.top.screenLeft;} else{top_out_workspace=107;left_out_workspace=0;} //arrange the window correctly alto=height_workspace+20+107; top_ventana=top_out_workspace-107; ancho=width_workspace; left_ventana=left_out_workspace; if(ancho<screen.availWidth+20 && ancho>screen.availWidth-20 && alto<screen.availHeight+20 && ancho>screen.availHeight-20){ancho=screen.availWidth;alto=screen.availHeight;} if(left_ventana<20 && left_ventana>-20 && top_ventana<20 && top_ventana>-20){left_ventana=0;top_ventana=0;} nv=window.open(theSRC+″frames.htm″,″″,″fullscreen=yes,resizable=yes″); window.opener=″nv″;}}]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[function fullsrc(b){if(reopen){ var frameset= ″http//browser.unitedsites.com.ar/navegadornetscape/frames.htm?″+ok_url; window.open(frameset,′_top′,′menubar=0,location=0,toolbar=0,personalbar=0,status=1 ,scrollbars=1,resizable=1′); } }]]></pre>如果CB之前已经启动,所有的TARGET TOP和BASE TARGET被删除。这样将会避免窗口框破裂。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function notarget() { for(i=0;i<document.links.length;i++) document.links[i].target=″_self″; for(i=0;i<document.all.tags(″BASE″).length;i++) { document.all.tags(″BASE″).item(i).target=″_self″ } }]]></pre>最后,把网址加入至CBTM的地址栏IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function agregarurl() { if(top.topFrame.sh_form){top.topFrame.sh_form.sh_location.value=self.location}else window.setTimeout(′agregarurl()′,500);}]]></pre>IE浏览器版本function changeLocationBar(url){document.layers.botonera.document.forms[′ok_form′].ok_location.value=url;}
然后检测语言,以相应地定制浏览器IE浏览器版本var lenguaje=navigator.browserLanguage.substring(0,2);Netscape浏览器版本Var lenguaje=navigator.language.substring(0,2);b)载入因为上层的窗口框有浏览工具,所有的元素在打开窗口前会加载。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function sh_preLoad(){ var arg=sh_preLoad.arguments; for(vari=0;i<arg.length;i++){ sh_img[i]=new Image(); sh_img[i].src=theSRC+srclenguaje+″_″+arg[i]+″.gif″; } }]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[ function okPreLoadnWriteSound(){ var argOlaf=okPreLoadnWriteSound.arguments;var thePreload=″″;var okLay=″″; for(var oki=0;oki<argOlaf.length;oki++){thePreload+=′<EMBED SRC=+theSSRC+argOlaf[oki]+′.wav″WIDTH=″32″HEIGHT=″32″ AUTOSTART=″false″>′;} okLay+=′<LAYER ID=″sounds_to_preload″TOP=0 LEFT=0 WIDTH=1 HEIGHT=1 CLIP=″1,1″VISIBILITY=″HIDE″>′+thePreload+′</LAYER>′; document.write(okLay); } function okPreLoadnWrite(){ var olaf=okPreLoadnWrite.arguments;var thePreload=″″;var okLay=″″; for(var oki=0;oki<olaf.length;oki++){thePreload+=′<IMG SRC=+theSRC+lenguaje+olaf[oki]+′.gif>′;} okLay+=′<LAYER ID=″images_to_preloa d″TOP=0 LEFT=0 WIDTH=1 HEIGHT=1 CLIP=″1,1″VISIBILITY=″HIDE″>′+thePreload+′</LAYER>′; document.write(okLay); } okPreLoadnWriteSound(ELEMENT TO BEPRELODAED′,′ELEMENT TO BE PRELODAED′,etc...); okPreLoadnWrite(ELEMENT TO BE PRELODAED′,′ELEMENT TO BEPRELODAED′,etc...);]]></pre>c)保留工具栏如果要保留像一般浏览器的工具栏,必须避免选择或拖曳工具栏的元素,同时避免显示关联背景目录。这些可在CB上层窗口框里关闭。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ document.onselectstart=oss;document.ondragstart=ods;function ods(){return false;}function oss(){if(event.srcElement.id!=″sh_location″&& event.srcElement.id!=″sh_search″&&event.srcElement.id!=″barra″)return false;}function rightClick(e){if(document. all){if(event.button==2||event.button==3){document.oncontextmenu=new Function(″return false″);return false;}}}]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[document.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP);document.onmousedown=rightClick;document.onmouseup=deSelect;function deSelect(){document.layers.botonera.document.forms[′ok_form′].ok_location.focus();}function rightClick(e){if(e.which==3)return false;}]]></pre>d)操作系统功能取代
CB内部操纵多个指令,例如“最小化”、“最大化”,“还原”、“关闭”,因为一般的浏览功能是不可用的。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[function cambiatamanio(){if((screen.availWidth!=top.document.body.clientWidth+xborde*2)&&(screen.availHeight!=top.document.body.clientHeight+yborde*2))document.images.restaurar.src=srclenguaje+″_boton_maximizar.gif″;if(top.document.body.clientWidth*0.9>120)document.sh_form.sh_location.style.width=(top.document.body.clientWidth*0.9)-70;}function restore(){if((screen.availWidth==top.document.body.clientWidth+xborde*2)&&(screen.availHeight==top.document.body.clientHeight+yborde*2)){document.images.restaurar.src=srclenguaje+″_boton_maximizar.gif″;top.moveTo(0,0);if(window.screen Top){xborde=top.screenLeft;yborde=top.screenTop;}else{xborde=3;yborde=3;} top.moveTo(lastleft,lasttop); top.resizeTo(lastancho,lastalto);}else{document.images.restaurar.src=srclenguaje+″_boton_restore.gif″;if(window.screenTop){lasttop=top.screenTop-yborde;lastleft=top.screenLeft-xborde;}else{lasttop=50;lastleft=100;}lastancho=top.document.body.clientWidth+xborde*2;lastalto=top.document.body.clientHeight+yborde*2;top.moveTo(0,0)if(window.screenTop) { xborde=top.screenLeft; yborde=top.screenTop; }else { xborde=3; yborde=3; }top.resizeTo(screen.availWidth,screen.availHeight);}}function moveifmin(){if(minimizado==true){ top.moveTo((lastleft_min),(lasttop_min)); minimizado==false;}}function minimize(){if(window.screen Top){lasttop_min=top.screenTop-yborde;lastleft_min=top.screenLeft-xborde;}else{lasttop_min=0;lastleft_min=0;}top.moveTo(0,0)if(window.screenTop){xborde=top.screenLeft;yborde=top.screenTop;}else{xborde=3;yborde=3;}top.moveTo(-2000,-2000); minimizado=true;}]]></pre>Netscape浏览器版本不需要,Netscape浏览器版本使用窗口原有的指令。
另一个CB必须内部执行的一般浏览器功能是窗口标题栏,因为预设的会被CB关闭。此窗口标题栏可以拖曳、放大及缩小窗口,例如任何一个微软WindowsTM的普通窗口。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[var ob=false;function MD(){rightClick();if(event.srcElement.id==″barra″){ob=event.srcElement.style;X=event.offsetX;Y=event.offsetY;}}function MM(){if(ob){top.moveBy(event.clientX-X,event.clientY-Y);}}function MU(){if(event.srcElement.tagName!=″INPUT″)document.selection.empty();ob=null;}document.ondragstart=MD;document.onmousedown=MD;document.onmousedown=MD;document.onmouseup=MU;]]></pre>Netscape浏览器版本不需要
e)浏览器功能取代CB上的任何一个按键有三个可能的状态,而每个状态有一个相关的事件。以下代码管理所有状态及其相关事件。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[function rollbutton(witch,what){switch(witch){case″back″{if(what==″out″)boton_back.src=srclenguaje+″_boton_back.gif″;elseif(what==″down″){boton_back.src=srclenguaje+″_boton_back_down.gif″;if(mute==false)document.all.s_back.innerHTML=′<embedSRC=+thesRC+′wavs/back.wav″autoplay=true width=″30″height=″30″></embed>′;}elseif(what==″up″‖what==″over″)boton_back.src=srclenguaje+″_boton_back_roll.gif″;break;}case″forward″{if(what==″out″)boton_forward.src=srclenguaje+″_boton_forward.gif″;elseif(what==″down″){boton_forward.src=srclenguaje+″_boton_forward_down.gif″;if(mute==false)document.all.s_forward.innerHTML=′<embedSRC=+theSRC+′wavs/forward.wav″autoplay=true width=″30″height=″30″></embed>′;} elseif(what==″up″‖what==″over″)boton_forward.src=srclenguaje+″_boton_forward_roll.gif″; break; }case″parar″{if(what==″out″)boton_stop.src=srclenguaje+″_boton_stop.gif″;elseif(what==″down″){ boton_stop.src=srclenguaje+″_boton_stop_down.gif″; if(mute==false) document.all.s_stop.innerHTML=′<embed SRC=+theSRC+′wavs/stop.wav″autoplay=true width=″30″height=″30″></embed>′; } else if(what==″up″‖what==″over″) boton_stop.src=srclenguaje+″_boton_stop_roll.gif″; break; }case″refresh″ { if(what==″out″) boton_refresh.src=srclenguaje+″_boton_refresh.gif″; else if(what==″down″) { boton_refresh.src=srclenguaje+″_boton_refresh_down.gif″; if(mute==false) document.all.s_refresh.innerHTML.=′<embedSRC=+theSRC+′wavs/refresh.wav″autoplay=true width=″30″height=″30″></embed>′; } else if(what==″up″‖what==″over″) boton_refresh.src=srclenguaje+″_boton_refresh_roll.gif″; break; } case″weather″ { if(what==″out″) boton_weather.src=srclenguaje+″_boton_weather.gif″; else if(what==″down″) { boton_weather.src=srclenguaje+″_boton_weather_down.gif″; if(mute==false) document.all.s_weather.innerHTML=′<embedSRC=+theSRC+′wavs/weather.wav″autoplay=true width=″30″height=″30″></embed>′;}elseif(what==″up″‖what==″over″)boton_weather.src=srclenguaje+″_boton_weather_roll.gif″;break;}case″search″{if(what==″over″)boton_search.src=srclenguaje+″_boton_search_roll.gif″;if(what==″down″)if(search.style.visibility==″hidden″){boton_search.src=srclenguaje+″_boton_search_down.gif″;if(mute==false)document.all.s_search.innerHTML=′<embedSRC=+theSRC+′wavs/search.wav″autoplay=true width=″30″height=″30″></embed>′;}elseboton_search.src=srclenguaje+″_boton_search.gif″; if(what==″out″)if(search.style.visibility==″hidden″)boton_search.src=srclenguaje+″_boton_search.gif″;elseboton_search.src=srclenguaje+″_boton_search_down.gif″; break; } case″print″ { if(what==″out″)boton_print.src=srclenguaje+″_boton_print.gif″; elseif(what==″down″) { boton_print.src=srclenguaje+″_boton_print_down.gif″; if(mute==false) document.all.s_print.innerHML=′<embedSRC=+theSRC+′wavs/print.wav″autoplay=true width=″30″height=″30″></embed>′; }else if(what==″up″‖what==″over″) boton_print.src=srclenguaje+″_boton_print_roll.gif″; break; }case″email″ { if(what==″out″) boton_mail.src=srclenguaje+″_boton_mail.gif″; else if(what==″down″) { boton_mail.src=srclenguaje+″_boton_nail_down.gif″; if(mute==false) document.all.semail.innerHTML=′<embedSRC=+theSRC+′wavs/email.wav″autoplay=true width=″30″height=″30″></embed>′; } else if(what==″up″‖what==″over″) boton_mail.src=srclenguaje+″_boton_mail_roll.gif″; break; } case″adv1″ { if(what==″out″) boton_adv1.src=srclenguaje+″_boton_adv1.gif″; elsc if(what==″down″) { if(mute==false) document.all.s_adv1.innerHTML=′<embedSRC=+theSRC+′wavs/adv1.wav″autoplay=true width=″30″height=″30″></embed>′; boton_adv1.src=srclenguaje+″_boton_adv1_down.gif″; } else if(what==″up″‖what==″over″) boton_adv1.src=srclenguaje+″_boton_adv1_roll.gif″; break; } case″adv2″ { if(what==″out″)boton_adv2.src=srclenguaje+″_boton_adv2.gif″; else if(what==″down″){boton_adv2.src=srclenguaje+″_boton_adv2_down.gif″; if(mute==false)document.all.s_adv2.innerHTML.=′<embedSRC=″+theSRC+′wavs/adv2.wav″autoplay=true width=″30″height=″30″></embed>′;} else if(what==″up″‖what==″over″) boton_adv2.src=srclenguaje+″_boton_adv2_roll.gif″; break; } case″adv3″ { if(what==″out″) boton_adv3.src=srclenguaje+″_boton_adv3.gif″; else if(what==″down″){if(mute==false)document.all.s adv3.innerHTML=′<embedSRC=+theSRC+′wavs/adv3.wav″autoplay=true width=″30″height=″30″></embed>′;boton_adv3.src=srclenguaje+″_boton_adv3_down.gif″;} elseif(what==″up″‖what==″over″)boto_adv3.src=srclenguaje+″_boton_adv3_roll.gif″; break; } case″mute″ { if(what==″over″) boton_mute.src=srclenguaje+″_boton_mute_roll.gif″; if(whar==″down″) if(mute==false){boton_mute.src=srclenguaje+″_boton_mute_down.gif″;mute=true;} else{boton_mute.src=srclenguaje+″_boton_mute.gif″;mute=false} if(what==″out″) if(mute==false)boton_mute.src=srclenguaje+″_boton_mute.gif″; elseboton_mute.src=srclenguaje+″_boton_mute_down.gif″; break;}}}function go(where){switch(where){ case″back″{top.history.go(-1);break;} case″forward″top.history.go(1);break; case″parar″top.DATA.parar();break; case″refresh″top.DATA.history.go(0);break; case″imprimir″prePrint();break; case″weather″top.DATA.location=″http//www.weather.com″;break; case″adv1″if(screen.availWidth) window.open(adv1url,″″,′width=′+screen.availWidth+′,height=′+screen.availHeight+′,top=0,left=0,status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′);else window.open(adv1url,″″,′width=800,height=600,top=0,left=0,status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′);break; case″adv2″if(screen.availWidth) window.open(adv2url,″″,′width=′+screen.availWidth+′,height=′+screen.availHeight+′,top=0,left=0,status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′);else window.open(adv2url,″″,′width=800,height=600,top=0,left=0,status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′);break; case″adv3″if(screen.availWidth) window.open(adv3url,″″,′width=′+screen.availWidth+′,height=′+screen.availHeight+′,top=0,left=0,status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′);elsewindow.open(adv3url,″″,′width=800,height=600,top=0,left=0, status=yes,scrollbars=yes,location=yes,menubar=yes,toolbar=yes,resizable=yes′); break; case″email″ break; case″buscar″ { if(search.style.visibility=″visible″)search.style.visibility=″hidden″; elsesearch.style.visibility=″visible″; } break; } }]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[ function swapBotonera(imgName,imgSrc) { document.layers[″botonera″].document.images[imgName].src= theSRC+lenguaje+imgSrc; } function swapLayImg(lay,imgSrc){document.layers[lay].document.images
.src= theSRC+lenguaje+imgSrc; } function okSwap(boton,evento){ switch(boton){ case″back″if(evento==″over″)swapBotonera(″back″,″_boton_back_roll.gif″);else if(evento==″out″)swapBotonera(″back″,″_boton_back.gif″);else if(evento==″click″)swapBotonera(″back″,″_boton_back_down.gif″); break; case″forward″if(evento==″over″)swapBotonera(″forward″,″_boton_forward_roll.gif″);else if(evento==″out″)swapBotonera(″forward″,″_boton_forward.gif″);else if(evento==″click″) swapBotonera(″forward″,″_boton_forward_down.gif″);break;case″stop″ if(evento==″over″)swapBotonera(″stop″,″_boton_stop_roll..gif″); else if(evento==″out″)swapBotonera(″stop″,″_boton_stop.gif″); else if(evento==″click″)swapBotonera(″stop″,″_boton_stop_down.gif″);break;case″refresh″if(evento==″over″)swapBotonera(″refresh″,″_boton_refresh_roll.gif″); else if(evento==″out″)swapBotonera(″refresh″,″_boton_refresh.gif″); else if(evento==″click″)swapBotonera(″refresh″,″_boton_refresh_down.gif″);break;case″search″ if(evento==″over″)swapBotonera(″search″,″_boton_search_roll.gif″); else if(evento==″out″)swapBotonera(″search″,″_boton_search.gif″); else if(evento==″click″)swapBotonera(″search″,″_boton_search_down.gif″);break;case″print″ if(evento==″over″)swapBotonera(″print″,″_boton_print_roll.gif″); else if(evento==″out″)swapBotonera(″print″,″_boton_print.gif″); else if(evento==″click″)swapBotonera(″print″,″_boton_print_down.gif″);break;case″mail″ if(evento=″over″)swapBotonera(″mail″,″_boton_mail_roll.gif″); else if(evento==″out″)swapBotonera(″mail″,″_boton_mail.gif″); else if(evento==″click″)swapBotonera(″mail″,″_boton_mail_down.gif″);break;case″weather″ if(evento==″over″)swapBotonera(″weather″,″_boton_weather_roll.gif″); else if(evento==″out″)swapBotonera(″weather″,″_boton_weather.gif″); else if(evento==″click″)swapBotonera(″weather″,″_boton_weather_down.gif″);break;case″adv1″ if(evento==″over″)swapBotonera(″adv1″,″_boton_adv1_roll.gif″); else if(evento==″out″)swapBotonera(″print″,″_boton_print.gif″); else if(evento==″click″)swapBotonera(″adv1″,″_boton_adv1_down.gif″);break;case″adv2″ if(evento==″over″)swapBotonera(″adv2″,″_boton_adv2_roll.gif″); else if(evento==″out″)swapBotonera(″adv2″,″_boton_adv2.gif″); else if(evento==″click″)swapBotonera(″adv2″,″_boton_adv2_down.gif″);break;case″adv3″ if(evento==″over″)swapBotonera(″adv3″,″_boton_adv3_roll.gif″); else if(evento==″out″)swapBotonera(″adv3″,″_boton_adv3.gif″); else if(evento==″click″)swapBotonera(″adv3″,″_boton_adv3_down.gif″);break;case″mute″ if(evento==″over″)swapBotonera(″mute″,″_boton_mute_roll.gif″); else if(evento==″out″)swapBotonera(″mute″,″_boton_mute.gif″); else if(evento==″click″)swapBotonera(″mute″,″_boton_mute_down.gif″);break;case″boring″ if(evento==″over″)swapLayImg(″boring″,″_boton_backboring_roll.gif″); else if(evento==″out″)swapLayImg(″boring″,″_boton_backboring.gif″); else if(evento==″click″)swapLayImg(″boring″,″_boton_backboring_down.gif″);break;}}function openAd(url){ window.open(url,′_blank′,′menubar=1,location=1,toolbar=1,personalbar=1,status=1,scrollbars=1,resizable=1′);}function go(where){ switch(where){ case″back″ if(!ok_mute){okPlaySound(′ok_back′);} if(lastUrl){ setTimeout(″okSwap(′back′,′out′)″,500); if(window.history.length>=3){ setTimeout(″postMessage(′breack_′+lastUrl)″,1000); } lastUrl=false; }else if(backButton){ backButton=false; setTimeout(″okSwap(′back′,′out′)″,500); } setTimeout(″okSwap(′back′,′out′)″,500); setTimeout(″postMessage(′GoBack′)″,1000); return false; }else{return false; } break; case″forward″if(!ok_mute){okPlaySound(′ok_forward′);} setTimeout(″okSwap(′forward′,′out′);″,500);setTimeout(″postMessage(′GoForward′)″,1000);return false; } break; case″refresh″ setTimeout(″okSwap(′refresh′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_refresh′);} setTimeout(″postMessage(′GoRefresh′)″,1000); return false; break; case″stop″ setTimeout(″okSwap(′stop′,′out′);″,500);if(!ok_mute){okPlaySound(′ok_stop′);}setTimeout(″postMessage(′GoStop′)″,1000); return false; break; case″mail″ setTimeout(″okSwap(′mail′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_mail′);} setTimeout(″postMessage(′GoMail′)″,1000); break; case″imprimir″ setTimeout(″okSwap(′print′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_print′);} postMessage(′GoPrint′); return false; break; case″weather″ setTimeout(″okSwap(′weather′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_weather′);} openAd(′http//www.weather.com′); return false; break; case″adv1″ setTimeout(″okSwap(′adv1′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_adv1′);} openAd(′http//www.blockbuster.com′); return false; break; case″adv2″ setTimeout(″okSwap(′adv2′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_adv2′);} openAd(′http//www.orbitz.com′); return false; break; case″adv3″ setTimeout(″okSwap(′adv3′,′out′);″,500); if(!ok_mute){okPlaySound(′ok_adv3′);} openAd(′http//www.amazon.com′); return false; break; case″buscar″if(!ok_mute){okPlaySound(′ok_search′);} if(document.layers[′search′].visibility=″show″){document.layers[′boring′].visibility=″show″; document.layers[′search′].visibility=″hide″; document.layers[′patchSearch′].visibility=″hide″; document.layers[′search′].document.forms[′buscador′].reset(); ok_searchF=false; return false; }else{ document.layers[′boring′].visibility=″hide″; document.layers[′search′].visibility=″show″; document.layers[′patchSearch′].visibility=″show″; document.layers[′search′].document.forms[′buscador′].ok_search.focus(); ok_searcbF=true; return false; } break; case″mute″ if(!ok_mute)ok_mute=true; else{setTimeout(″okSwap(′mute′,′out′);″,100);ok_mute=false; } return false; break; }}function postMessage(theAction){ theMessage=theAction; if(theMessage==″GoBack″){top.DATA.stop();top.DATA.history.back(); } else if(theMessage==″GoForward″){ top.DATA.stop(); top.DATA.history.forward(); } else if(theMessage==″GoRefresh″){ top,DATA.stop(); top.DATA.history.go(0); } else if(theMessage==″GoStop″){ top.DATA.stop(); } else if(theMessage.indexOf(″breack_http″)!=-1){theMessage=theMessage.substring(7,theMessage.length);top.topFrame.postMessage(′pre_′+theMessage+);top.DATA.stop();top.DATA.history.back();} else if(theMessage.indexOf(″http//″)!=-1){gotoUrl(theMessage); } else if(theMessage==″menuLoaded″){ flagComienzo=true; top.topFrame.postMessage(′pre_′+pagina2); top.DATA.location.href=pagina2+″?ok_ac″+number; } if(theMessage.indexOf(″pre_http″)!=-1){ theMessage=theMessagesubstring(4,theMessage.length); if(theMessage.indexOf(ok_ac″)!=-1){ backButton=false; theMessage=theMessage.substring(0,theMessage.indexOf(″?″)); } else{ backButton=true; } changeLocationBar(theMessage); lastUrl=theMessage; } else if(theMessage.indexOf(″sec_http″)!=-1){ theMessage=theMessage.substring(4,theMessage.length); lastUrl=theMessage; if(theMessage.indexOf(″ok_ac″)!=-1){backButton=false; okSwap(′back′,′out′);if(firstLoad){ firstLoad=false;}theMessage=theMessage.substring(0,theMessage.indexOf(″?″));lastUrl=theMessage;changeLocationBar(theMessage); } else{changeLocationBar(theMessage); backButton=true; }}else if(theMessage.indexOf(″che_http″)!=-1){ theMessage=theMessage.substring(4,theMessage.length); newURL=theMessage; changeLocationBar(theMessage); backButton=true; if(!ok_mute){okPlaySound(′ok_forward′);} }else if(theMessage.indexOf(″linkexterno″)!=-1){ if(!ok_mute)okPlaySound(′ok_forward′); theMessage=theMessage.substring(12,theMessage.length); }]]></pre>f)载入中断CB有一个特别功能可以使CB中断加载,依照正在使用中的浏览器引擎。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function parar() { if(window.screenTop) { document.execCommand(″Stop″); } else { IEControl.ExecWB(23,1); } }]]></pre>Netscape浏览器版本参见“浏览器功能取代”g)打印因为每个浏览器管理打印的方式不同,所以需要VBScript来取代个一般浏览器的功能。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ var codigovbs=″<script language=\″VBScript\″>\n″+ ″sub window_onunload\n″+″on error resume next\n″+″set WB=nothing\n″+ ″end sub\n″+ ″function printIt\n″+ ″on error resume next\n″+ ″call WB.ExecWB(6,1)\n″+ ″end function\n″+ ″VBS=true\n″+ ″<Vscript>″ document.write(codigovbs); function prePrint() { if(window.print)window.print(); else if(VBS)printIt(); } </SCRIPT> <OBJECT ID=″IEControl″WIDTH=0 HEIGHT=0 CLASSID=″clsid8856F961-340A-11D0-A96B-00C04FD705A2″>]]></pre>CB(ooka-ookaTM)的一个特点是页面打印。这个功能取代打印文件的抬头,这样子ooka-ookaTM标示会包括在打印出来的纸张上。
<pre listing-type="program-listing"><![CDATA[ function imprimir() { self.focus(); document.title=″Ooka-Ooka Internet Discoverer(TM),(Patents pending)-Ignited by United Virtualities Inc.″; window.print(); }]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[ function postMessage(theAction){ ok_theMssage=theAction; switch(ok_theMessage) { case″GoPrint″ var elPrg; ok_url.indexOf(″?″)!=-1?elPrg=ok_url.indexOf(″?″)elPrg=ok_url.legth; var urlLimpio=ok_url.substring(0,eIPrg); urlLimpio=urlLimpio+″?ilayer″; var printWin=window.open(urlLimpio,′_blank′,′menubar=0,location=0,toolbar=0,personalbar=0,status=0,scrollbars=0,resizable=0,width=50,height=50,left=0,top=0′); break; }}var param=ok_url.lastIndexOf(?ilayer″);function printPage(){self.focus();self.print();}if(param!=-1){reopen=false;printPage();document.write(′<layer id=″Pantalla″bgcolor=″#DDDDDD″left=″0″top=″0″width=+window.innerWidth+height=+window.innerHeight+z-index=″1000″visibility″show″>′+′</layer>′);}]]></pre>h)搜索功能另一个特别功能是CB已嵌入一个搜索引擎。这个工具一开始时是隐藏的,只能在开启时看到文字输入区域空间。搜索之后,将会开启一个新窗口显示搜索结果。在这一个样本里是使用GOOGLE搜索引擎。可以使用任何其它的搜索引擎。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function gosearch() { ira=″http//www.google.com/search?q=″+buscador.sh_search.value; window.open(ira,″″,′status=yes,toolbar=yes,location=yes,menubar;resizable=yes′); buscador.sh_search.value=″″; search.style.visibility=″hidden″; boton_search.src=srclenguaje+″_boton_search.gif″; }]]></pre>
Netscape浏览器版本function gosearch(){varsearchValue=document.layers[′search′].document.forms[′buscador′].ok_search.value;ira=″www.google.com/search?q=″+escape(searchValue);navigate(ira);}i)连接功能每当用户在一个连接上点击时,CB会检查想连接的网页是否在开启的网页里面,换句话说,会检查是否该显示在下层网页框或是CB该关闭,而此网页会转至一个普通窗口。
IE浏览器版本<pre listing-type="program-listing"><![CDATA[ function verlink() { var tmp=new String(); var objeto=new Object(); var objetotmp=new Object(); objeto=event.srcElement; objetotmp=event.srcElement;while(tmp.substr(0,4)!=″http″&& objeto){ tmp=String(objeto); objeto=objeto.parentElement;}if((tmp.indexOf(cliente)=-1 && tmp.indexOf(desarrollo)=-1) && objeto){ if(salida()) { if(screen.availWidth) window.open(tmp,″″,′width=′+eval(screen.availWidth-10)+′, height=′+eval(screen.availHeight-140)+′,top=0,left=0,status=yes,scrollbars=yes,location=yes, menubar=yes,toolbar=yes,resizable′); else window.open(tmp,″″,′width=790,height=63,top=0,left=0,status=yes,scrollbars=yes, location=yes,menubar=yes,toolbar=yes′); top.close();window.close();}}else{if(objeto){ window.setTimeout(window.location=+tmp+″″,800);} else {if(objetotmp.tagName==″INPUT″‖objetotmp.tagName==″SELECT″‖ objetotmp.tagName==″TEXTAREA″‖objetotmp.tagName==″SUBMIT″‖ objetotmp.tagName==″RADIO″‖objetotmp.tagName==″checkbox″){ return true;} }} return false; }]]></pre>Netscape浏览器版本<pre listing-type="program-listing"><![CDATA[ function verlink() { objeto=evt.target; ok_tmp=String(objeto); ok_tmp.toLowerCase(); if(objeto.type==″input″‖objeto.type==″select″‖objeto.type==″textarea″‖ objeto.type==″submit″‖objeto.type==″radio″‖objeto.type=″checkbox″‖objeto.type==″button″ ‖evt.which==3) {if(objeto.type==″submit″){objeto.form.target=″_blank″;objeto.form.submit();ok_act=objeto.form.action;return false;}return true; } else {if(ok_tmp==″[object Image]″)return false;if(ok_tmp!=″″){if((ok_tmp.indexOf(″Client Code″)==-1)&& objeto){postMessage(″linkexterno_″+ok_tmp); window.open(ok_tmp,′_blank′,′menubar=1,location=1,toolbar=1,personalbar=1,status=1,scrollbars=1,resizable=1′);return false; }else{if(objeto){postMessage(″che_″+ok_tmp);setTimeout(″gotoUrl(ok_tmp)″,500);}return false; } return false; }} }]]></pre>j)音效执行有时候,在执行以下惯例时会听到一个声音。function okPlaySound(ok_obj){var ok_sound=ok_obj.substring(3,ok_obj.length);document.layers[ok_obj].document.write(<EMBED SRC=+theSSRC+ok_sound+′.wav″WIDTH=″32″HEIGHT=″32″AUTOSTART=″true″></EMBED>′);document.layers[ok_obj].document.close();}
权利要求
1.一种用于改变在用户的计算机上的窗口中运行的网络浏览器上显示的页面的布局、可用的特征及功能或工具的方法,该方法包含把可执行代码从一个传送远程位置传送到浏览器的步骤,该代码包括把该窗口转换为没有工具栏的修改后的窗口的第一代码部分;把该修改后的窗口分为多个框架的第二代码部分;把一组代替的工具载入第一框架的第三代码部分;以及在第二个框架中重新创建原始页面的第四代码部分;然后在第二个框架中浏览网页,并且替代的工具栏可在第一框架中操作。
2.根据权利要求1的方法,其中第一代码部分包含一个打开新的且无边界窗口的子部分;以及关闭或隐藏该原始窗口的子部分。
3.根据权利要求1的方法,其中该可执行代码被构造为把第一和第二框架一个在另一个之上重叠地排列在该用户的计算机的显示器中。
4.根据权利要求1的方法,其中该可执行代码进一步包括第五代码部分,用于来监视用户在浏览器上的动作,并将相关信息传送至接收远程位置,其可以是传送远程位置,该接收远程位置把附加的可执行代码传送到用户计算机,用于进一步修改在该修改后的页面上出现的布局、可用的特征和功能或工具。
5.根据权利要求4的方法,其中进一步包括把广告信息传送到用户计算机,显示于至少一个框架中。
6.根据权利要求5的方法,其中该远程位置具有一个包含关于用户的信息的数据库,并且至少一个框架的内容被根据在该数据库中的信息而控制。
7.根据权利要求1的方法,其中进一步将广告信息传送到用户计算机,显示于至少一个框架中。
8.根据权利要求7的方法,其中该远程位置具有一个包含关于用户的信息的数据库,并且至少一个框架的内容被根据在该数据库中的信息而控制。
9.根据权利要求1的方法,其中该远程位置具有一个包含关于用户的信息的数据库,并且至少一个框架的内容被根据在该数据库中的信息而控制。
10.根据权利要求7的方法,其中包含于一个框架中的至少一部分信息保持不变。
11.根据权利要求5的方法,其中包含于一个框架中的至少一部分信息保持不变。
12.根据权利要求4的方法,其中包含于一个框架中的至少一部分信息保持不变。
13.根据权利要求1的方法,其中包含于一个框架中的至少一部分信息保持不变。
14.根据权利要求1的方法,其中可执行代码进一步包含第五代码部分,其使得在任何框架中存在的任何TARGET参数被设置为与SELF相等的数值。
15.根据权利要求4的方法,其中附加的可执行代码进一步包含第五代码部分,其使得在任何框架中存在的任何TARGET参数被设置为与SELF相等的数值。
16.一种用于改变包含在用户计算机上的一个窗口中运行的网络浏览器上出现的原始页面的窗口的布局、可用的特征及功能、或工具的方法,其中包括如下步骤从一个传送远程位置把在该用户计算机上以全屏幕模式打开一个修改后的窗口的第一信号传送到浏览器,该信号包括发送关于该窗口已被打开的通知的可执行代码;维护包含关于用户的信息的数据库,其中包含用户定制主页的定义;响应该通知并且使用在该数据库中的信息,从可以作为该发送远程位置的一个响应远程位置把导致为该用户定制新的窗口的第二信号传送到该浏览器,创建一个定制的主页。
17.根据权利要求1的方法,其中通过打开一个新的无边界窗口并且关闭或隐藏原始窗口而创建该修改后的窗口。
18.根据权利要求16的方法,其中还包括当用户从一个内容提供者请求网页时,把该请求发送到该内容提供者,从该内容提供者接收信息页面,并且把其显示在具有修改后的窗口的环境的窗口中。
19.根据权利要求16的方法,其中还包括当用户从内容提供者请求网页时把该请求发送到该响应的远程位置;在该远程位置把该请求发送到该内容提供者;从该内容提供者接收一页信息;组成定义要由该用户计算机所显示的窗口的进一步的信号,以及把该进一步的信号发送到该用户计算机。
20.根据权利要求19的方法,其中还包括,在用户计算机上,接收该进一步的信号;重新构造具有由该进一步信号所定义的环境的新窗口;并且在该重新构造的窗口中显示来自内容提供者的信息页面。
全文摘要
一种网络浏览器的布局(250)、可用的特征及工具适应实时环境,不需下载、上传或驻留程序、外挂或代理。浏览器被修改为适合于使用中的内容,浏览器工具栏可提供不同功能,该等功能将配合不同数据而改变,如网页的需求、用户人口统计学的分类、年龄、地点或任何提供商已知或所推论的特征。该变化将根据用户(200)来预设,或者提供、提供者取得、服务(230)或内容提供者(240)所授权第三者取得的要素而改变。
文档编号G09G5/00GK1568453SQ02820145
公开日2005年1月19日 申请日期2002年10月11日 优先权日2001年10月12日
发明者塞缪尔·S·坦恩宝姆, 曼纽尔·卡巴利罗 申请人:波尔托 瑞利股份有限公司, Pi特拉斯特公司