none
浏览器打开新链接是在新选项卡中打开的,怎么判断页面所在的选项卡是否选中的状态? RRS feed

  • 问题

  • 如题,
    或者能直接切换到选中状态..

    在普通窗口中是调用js 的window.focus() 解决的 在选项卡中不好使...

    各位支支招。。3Q
    ...
    2009年6月29日 9:03

答案

  • 天使同学~麻烦你提出问题之前先再仔细阅读一下楼主的问题~

    楼主想要做的事情很简单,打开一个页面,并focus到这个“新打开”的页面

    在窗口模式下,一切OK,只要在新的页面里window.open,就好了

    但是!!!!

    在选项卡下不行了!楼主就是想问,新开的页面在选项卡里,能不能选中那个选项卡!

    就我的经验来看。。不中。。。

    现在是做不到的,选择哪个Tab是浏览器行为,而且也不能选择window.open的时候强制新开一个页面

    这是js的局限,或者说是浏览器的局限

    搂主还是换一个思路来解决这个问题吧。

    或者你说说你场景,让大家帮你想别的方式解决
    2009年7月2日 1:01

全部回复

  • 我有点不理解你的问题
    2009年6月29日 12:52
  • 貌似。。。没有办法

    这个是浏览器行为。。。

    想办法不用window.open吧

    2009年6月29日 13:49
  • 不是Silverlight问题吧,你是说IE的选项卡?
    2009年6月30日 14:57
    版主
  • 不是Silverlight问题吧,你是说IE的选项卡?

    是 ie的选卡
    ...
    2009年7月1日 5:44
  • 这样吧!我猜了猜你的需求,试了一把!
    1.新建一个在页面里加入如下方法

    <script language = 'javascript'>
         function testShow(website){
            window.open(website, "dd", "ddd", "dddddd");
            window.focus();
            window.blur();


                   }

        </script>


    2.在后台代码里引用using System.Windows.Browser;命名空间
    3.HtmlPage.Window.CreateInstance("testShow",'http://www.163.com'); 
    呵呵!这样,你弹出163的网站的同时,原来的主页面还在focus状态,你试试^_^
    我的QQ283440946 天使坠,你有什么可以Q我。
    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月1日 7:35
    版主
  • 他的需求是可以切换到新开的页面,如果按照你的例子,是应当切换到163的页面

    普通window没问题

    选项卡不行的

    2009年7月1日 7:40
  • 他调用的不是windows.focus吗?那样的话是办了让 主页面获得焦点,因为弹出的页面弹出时就已经获得焦点,而且还是在最前面


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月1日 7:43
    版主
  • 他的意思是ie选项卡 是否选中的状态
     大概意思
    这是浏览器操作 用js操作不可能的

    2009年7月1日 8:04
  • 关键不是弹出的...是选项卡

    2009年7月1日 8:10
  • 如果是这样js也不能实现。


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月1日 8:20
    版主
  • 对 在普通窗口下window.focus() 就解决问题了...在选项卡下就不好使了...
    ...
    2009年7月1日 11:27
  • 你要达到什么效果?你期望在弹出子窗口时,主窗口得到焦点吗?
    还是你想在多选项卡的情况下判断那个选项卡得到焦点?(这个可能实现不了,看其它人的回答吧!^_^)
    还是指在你点击页面时如果只有一个选项卡,弹出新页面以后,主页面可以得到焦点。
    但是如果在多个选项卡的情况下,你点击弹出新窗口后,主页面得不到焦点了?


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月1日 11:34
    版主
  • 天使同学~麻烦你提出问题之前先再仔细阅读一下楼主的问题~

    楼主想要做的事情很简单,打开一个页面,并focus到这个“新打开”的页面

    在窗口模式下,一切OK,只要在新的页面里window.open,就好了

    但是!!!!

    在选项卡下不行了!楼主就是想问,新开的页面在选项卡里,能不能选中那个选项卡!

    就我的经验来看。。不中。。。

    现在是做不到的,选择哪个Tab是浏览器行为,而且也不能选择window.open的时候强制新开一个页面

    这是js的局限,或者说是浏览器的局限

    搂主还是换一个思路来解决这个问题吧。

    或者你说说你场景,让大家帮你想别的方式解决
    2009年7月2日 1:01
  • 天使同学~麻烦你提出问题之前先再仔细阅读一下楼主的问题~

    楼主想要做的事情很简单,打开一个页面,并focus到这个“新打开”的页面

    在窗口模式下,一切OK,只要在新的页面里window.open,就好了

    但是!!!!

    在选项卡下不行了!楼主就是想问,新开的页面在选项卡里,能不能选中那个选项卡!

    就我的经验来看。。不中。。。

    现在是做不到的,选择哪个Tab是浏览器行为,而且也不能选择window.open的时候强制新开一个页面

    这是js的局限,或者说是浏览器的局限

    搂主还是换一个思路来解决这个问题吧。

    或者你说说你场景,让大家帮你想别的方式解决
    嗯 说的对  是我问题描述的有问题..想了想还真是不如直接说场景简单...

    场景就是 我做的silverlight客户端和服务器通过TCP通信...,当silverlight客户端收到服务器的某一通知时,如果此时用户当前的浏览器窗口是最小化状态 或者是在选项卡中没有被选中的状态..则需要尽可能醒目的提示用户...

    现在暂时是模仿163邮箱有新邮件来了那种 网页的Title 不停的闪动.而且在选项卡状态下很不理想. 客户觉得很不满意...,客户想象里的理想状态是任务栏那块可以像QQ聊天时候那种 橘红色的闪啊闪的....,这是BS啊,我不知道怎么搞定这个...

    大家有什么好的建议...支支招.. 讨论讨论..




    ...
    2009年7月2日 6:20
  • 哦!呵呵!明白了,呵呵!我还瞎猜了那么久,呵呵!这个可能不能实现,不过有一个方法,在Silverlight 3里面,你用拖离浏览器模式的方法,可以让他获得到焦点。呵呵!


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月2日 6:24
    版主
  • 哦!呵呵!明白了,呵呵!我还瞎猜了那么久,呵呵!这个可能不能实现,不过有一个方法,在Silverlight 3里面,你用拖离浏览器模式的方法,可以让他获得到焦点。呵呵!


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!

    嗯 现在时用的silverlight 2.0 ,暂时不打算用 3.....。谢谢
    ...
    2009年7月2日 6:36
  • 2.0不能现实的 必须3.0支持分离模式才行 除非你可以换个flash方案可以解决

    2009年7月2日 7:22
  • 那就没办法啦!呵呵!


    努力!写一个js解析器,一个svg插件,一个绘图程序,做好自己,呵呵~!
    2009年7月2日 7:25
    版主
  • 到此为止吧...谢谢大家乐。。


    ...
    2009年7月3日 8:20