精华内容
下载资源
问答
  • js指定浏览器打开网页
    千次阅读
    2020-05-18 12:03:15
    $(function() {
        var ua = navigator.userAgent.toLowerCase(); //判断浏览器的类型
        if (ua.match(/MicroMessenger/i) != "micromessenger" && ua.match(/alipayclient/i) !=     "alipayclient") {
            // 如果不是微信内置浏览器,或支付宝内置浏览器,就打印访问agent信息 在if内灵活判断
            alert(ua);
        } 
    })

     

    更多相关内容
  • 最近工作中遇到一个需求,是要利用java打开指定浏览器,整理后发现有四种解决的方法,所以想着分享出来,下面这篇文章主要给大家介绍了java程序中指定某个浏览器打开的实现方法,,需要的朋友可以参考下。
  • 如下提供了三种在浏览器中使用chrome浏览器打开指定网页的方案。 链接一二效果相同,一采用js的window.open()打开新网页,二采用HTML的<a>打开新网页。(也是重新打开另一个网页,但不是替换当前网页。) ...

    关键技术:

    window.open()

    javaScript-打开新窗口(window.open)

    open() 方法可以查找一个已经存在或者新建的浏览器窗口。

    语法:
    window.open([URL], [窗口名称], [参数字符串])

    • URL:可选参数,在窗口中要显示网页的网址或路径。如果省略这个参数,或者它的值是空字符串,那么窗口就不显示任何文档。
    • 窗口名称:可选参数,被打开窗口的名称。

           1.该名称由字母、数字和下划线字符组成。
           2."_top"、"_blank"、"_self"具有特殊意义的名称。
                 _blank:在新窗口显示目标网页
                _self:在当前窗口显示目标网页
                _top:框架网页中在上部窗口中显示目标网页
          3.相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。
          4.name 不能包含有空格。

    • 参数字符串:可选参数,设置窗口参数,各参数用逗号隔开。

     

    解决方案:

    如下提供了三种在浏览器中使用chrome浏览器打开指定网页的方案。

    链接一二效果相同,一采用js的window.open()打开新网页,二采用HTML的<a>打开新网页。(也是重新打开另一个网页,但不是替换当前网页。)

    链接三采用js的window.open()的方法重新打开新的对话窗口。

    完整代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>origin Page</title>
    </head>
    <body>
        <p><a href="javascript:;" onclick="jumpPage();">window.open 打开新标签页</a> </p>
        <p><a href="http://www.w3school.com.cn" target="_blank">html方式 打开新标签页</a></p>
        <p><a href="javascript:;" onclick="openRequestedPopup();">window.open 打开新的浏览器窗口</a></p>
        <br>
        <script>
            // window.name = "origin";
            // function open_win() {
            //     window.open("http://www.w3school.com.cn")
            // }
            function jumpPage() {
                window.open("http://www.w3school.com.cn", 'hello');
            }
            var windowObjectReference;
            var strWindowFeatures = "width=1000,height=500,menubar=yes,location=yes,resizable=yes,scrollbars=true,status=true";
            function openRequestedPopup() {
                windowObjectReference = window.open("http://www.w3school.com.cn", "CNN_WindowName", strWindowFeatures);
                // windowObjectReference = window.open("./b.html", "B_page", strWindowFeatures);
    
                setTimeout(function () {
                    //windowObjectReference.close(); // 我们页面中关闭 或进行其他操作 打开的 窗口页
                    console.log(windowObjectReference.position); // 10s 后 在origin winodw 控制台 打印 B_page 视口对象中的position 成员
                }, 10000);
            }
        </script>
    </body>
    </html>

    如何替换当前窗口?

    待补充

    展开全文
  • node.js打开指定浏览器的四种方式

    千次阅读 2022-04-03 03:25:05
    目录 二 、使用opn 三、使用child_process 四、使用自定义封装函数 ...// 使用指定浏览器打开 open('https://blog.csdn.net/qq_19309473', 'firefox'); 二 、使用opn const opn = require('opn'); // 使用

    目录

    二 、使用opn

    三、使用child_process

    四、使用自定义封装函数


    一、使用open

    var open = require('open');
    // 使用默认浏览器打开
    //open('https://blog.csdn.net/qq_19309473');
    // 使用指定浏览器打开
    open('https://blog.csdn.net/qq_19309473', 'firefox');
    

    二 、使用opn

    const opn = require('opn');
    // 使用默认浏览器打开
    //opn('https://blog.csdn.net/qq_19309473');
    // 使用指定浏览器打开
    opn('https://blog.csdn.net/qq_19309473', {app: 'firefox'});
    

    三、使用child_process

    var c = require('child_process');
    // 使用默认浏览器打开
    //c.exec('start https://www.youcongtech.com');
    // 使用指定浏览器打开
    c.exec('https://blog.csdn.net/qq_19309473');
    

    四、使用自定义封装函数

    var fs = require('fs')
    var os = require('os')
    var cp = require('child_process')
    var path = require('path')
    var open = function (url) {
        var userInfo = os.userInfo()
        var chromePath = path.join(userInfo.homedir,
            'Local Settings\\Application Data\\Google\\Chrome\\Application\\chrome.exe')
        var openByIE = function () {
            cp.exec('start chrome ' + url, function (err, stdout, stderr) {
                if (err) {
                    console.log(err)
                }
            })
        }
        fs.stat(chromePath, function (err) {
            if (err) {
                openByIE()
                return
            }
            cp.exec('start firefox ' + url, function (err, stdout, stderr) {
                if (err) {
                    openByIE()
                    return
                }
            })
        })
    }
    
    open("https://blog.csdn.net/qq_19309473")

    展开全文
  • 本文主要介绍的是node.js调用Chrome浏览器打开链接地址的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 借助open模块实现 通过node-open模块,可以在任何平台上打开某个浏览器网址。 通过NPM安装 ...
  • 主要介绍了微信实现自动跳转到用其他浏览器打开指定APP下载,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 那么针对这些浏览器我们需要给用户提示从safari或者系统自带的浏览器打开分享页面,通过js就可以判断当前页面是在什么浏览器打开的。 以下是一段示例代码,注释中表明了通过JS如何判断是否在微信浏览器打开,是否在...
  • 如何实现一个谷歌浏览器插件一、什么是Chrome插件?...Chrome插件本质上来说,就是利用WEB开发技术,包括HTML、CSS和JS等开发出来的web页面,用来增强浏览器的功能。它生成的文件结果为一个.crx后缀的压缩包,...

    f4bf6be52a8253ae419059736b57ce3e.png如何实现一个谷歌浏览器插件

    一、什么是Chrome插件?

    Chrome插件就是我们运行在Chrome浏览器 上的扩展程序,比如说vue-devtool。准确的说,其实更应该叫做Chrome扩展,因为插件是更偏向于底层的技术。Chrome插件本质上来说,就是利用WEB开发技术,包括HTML、CSS和JS等开发出来的web页面,用来增强浏览器的功能。它生成的文件结果为一个.crx后缀的压缩包,是Chrome Extension的缩写。

    二、基本组成

    manifest.json: 插件的配置文件

    这是插件最重要也是最不可或缺的文件,它包含了插件的所有配置信息。

    {
        // 必须
        "manifest_version": 2, // 清单文件的版本,这个必须写,而且必须是2
        "name": "demo", // 插件的名称
        "version": "1.0.0", // 插件的版本
        
        // 推荐
        "default_locale": "en", // 默认语言
        "description": "插件的描述",
        "icons": {   // 图标,一般偷懒全部用一个尺寸的也没问题
            "16": "img/icon.png",        // 扩展程序页面上的图标
            "32": "img/icon.png",        // Windows计算机通常需要此大小。
            "48": "img/icon.png",        // 显示在扩展程序管理页面上
            "128": "img/icon.png"        // 在安装和Chrome Webstore中显示
        },

        // 会一直常驻的后台JS或后台页面
        "background":
        {
            // 2种指定方式,如果指定JS,那么会自动生成一个背景页
            "page": "background.html"
            "scripts": ["js/background.js"]
        },

        // 浏览器右上角图标设置
        "browser_action": 
        {
            "default_icon": "img/icon.png",
            "default_title": "这是一个示例Chrome插件", // 图标悬停时的标题
            "default_popup": "popup.html" // 在工具栏点击插件弹出的页面
        }, 

        // 当某些特定页面打开才显示的图标,例如vue-devtools
        /*"page_action":
        {
            "default_icon": "img/icon.png",
            "default_title": "我是pageAction",
            "default_popup": "popup.html"
        },*/

        // 需要直接注入页面的JS
        "content_scripts": 
        [
            {
                "matches": [""], // "" 表示匹配所有地址
                // 多个JS按顺序注入
                "js": ["js/content-script.js"],
                "css": ["css/custom.css"],
                "run_at": "document_start"
                // document_start: html解析完毕、CSS资源加载完成,JS执行前
                // document_end: DOMContentLoaded事件触发后立即执行
                // document_idle: 在load之前触发
            },
        ],

        // 权限申请
        "permissions":
        [
            "contextMenus", // 右键菜单 
            "tabs", // 标签
            "notifications", // 通知
            "webRequest", // web请求
            "storage", // 插件本地存储
        ],
    }

    content-scripts:插入页面的文件

    "content_scripts": 
        [
            {
                "matches": [""], // "" 表示匹配所有地址
                // 多个JS按顺序注入
                "js": ["js/jquery-1.8.3.js", "js/content-script.js"],
                "css": ["css/custom.css"],
                "run_at": "document_start"
            },
        ]

    直接将脚本注入到页面中,但是也可以包含CSS文件,但是在注入CSS文件时,要小心,否则会覆盖网页原本的样式。content-scripts中的JS程序和原始页面共享DOM,但是和原始页面的JS不是在同一个环境下运行的,所以我们是无法访问到原始页面中定义的变量的因为是是注入到页面中的,所以在安全策略上不能访问大部分的API,除了下面的四种:

    chrome.extension(getURL , inIncognitoContext , lastError , onRequest , sendRequest) 
    chrome.i18n
    chrome.runtime(connect , getManifest , getURL , id , onConnect , onMessage , sendMessage)
    chrome.storage

    background:常驻浏览器后台的页面

    // 会一直常驻的后台JS或后台页面
        "background":
        {
            // 2种指定方式,如果指定JS,那么会自动生成一个背景页
            "page": "background.html"
            "scripts": ["js/background.js"]
        }

    三、插件的展示形式

    browserAction(浏览器右上角)

    // 浏览器右上角图标设置
        "browser_action": 
        {
            "default_icon": "img/icon.png",
            "default_title": "这是一个示例Chrome插件", // 图标悬停时的标题
            "default_popup": "popup.html" // 在工具栏点击插件弹出的页面
        },

    tips:打开的任何页面都会运行插件程序

    pageAction

    // 当某些特定页面打开才显示的图标,例如vue-devtools
    "page_action":
        {
            "default_icon": "img/icon.png",
            "default_title": "我是pageAction",
            "default_popup": "popup.html"
        }
    可以控制是否运行此插件,例如只在打开百度时运行此插件,否则就置灰
    // 在组件安装完成之后注册监听函数
    chrome.runtime.onInstalled.addListener(function() {
        // 在页面跳转时,移除旧的规则加入新的规则
        chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
            // 如果url包含baidu则显示运行
            chrome.declarativeContent.onPageChanged.addRules([
                {
                    // That fires when a page's URL contains a 'g' ...
                    conditions: [
                        new chrome.declarativeContent.PageStateMatcher({
                        pageUrl: { urlContains: 'baidu' },
                        })
                    ],
                //在匹配成功后执行的操作
                actions: [ new chrome.declarativeContent.ShowPageAction() ]
                }
            ]);
        });
    });

    右键菜单

    通过开发Chrome插件可以自定义浏览器的右键菜单,主要是通过chrome.contextMenusAPI实现,右键菜单可以出现在不同的上下文,比如普通页面、选中的文字、图片、链接,等等,如果有同一个插件里面定义了多个菜单,Chrome会自动组合放到以插件名字命名的二级菜单里。

    chrome.contextMenus.create({
        title: "测试右键菜单",
        onclick: function(){alert('您点击了右键菜单!');}
    });

    四、消息通信

    JS通信主要体现在下面的几个文件之间

    • conten-scripts          background
    • popup          background
    • content-scripts        popup

    一、conten-scripts 和 background之间

    (1)content-scripts向background发送消息

    chrome.runtime.sendMessege(
        message,
        function(response) {…}
    )
    • message:表示向background发送的数据,基本类型,对象的话可以JSON序列化
    • function: background接受到消息后返回的信息

    (2)background向content-scripts发送消息

    每个tab页面都有一个自己的content-scripts,而background只有一个,所以往content-scripts发送消息,需要知道是哪一个tab

    /**
    获取当前选项卡id
    @param callback - 获取到id后要执行的回调函数
    */
    function getCurrentTabId(callback) {
        // 查询所有在当前浏览器打开的活动的tab
        chrome.tabs.query({active: true, currentWindow: true}, function (tabs) {
            if (callback) {
                callback(tabs.length ? tabs[0].id: null);
            }
        });
    }

    这里的callback就可以是我们发送信息的回调函数

    chrome.tabs.sendMessage(tabId, message, function(response) {...});

    contents-scripts接收

    chrome.runtime.onMessege.addListener(
        function(request, sender, sendResponse) {…}
    )

    二、popup和background之间

    可以直接获取background实例,然后直接里面定义的方法

    var bg = chrome.extension.getBackgroundPage();
    bg.someMethod();    //someMethod()是background中的一个方法

    三、popup与content script的通信

    本质上与上面的方式相同。

    展开全文
  • 一般浏览器的开发者窗口都可以通过在当前网页界面按F12快捷键调出,然后在上面的标签栏找到Console点击就是控制台窗口,在这里可以直接执行JavaScript代码,而chrome系浏览器的控制台界面可以使用快捷键Ctrl+Shift+J...
  • window.showModalDialog是IE浏览器特有的内置方法。兼容Chrome浏览器
  • 本文主要介绍的是利用java程序打开指定某个的浏览器 方法一: import java.lang.reflect.Method; //实现打开浏览器并跳到指定网址的类 public class TestUrl { public static void openURL(String url) { try ...
  • 我现在在做一个ios的app项目,用html5开发,因为要打开一个pdf文档,但是使用 window.location.href =“www.baidu.com”的跳转会直接在app内部打开,无法...想实现的功能就是调用ios内置的Safari打开,或者能返回也可以
  • 此方法可以实现微信内置浏览器跳转到手机其它浏览器,现在网上其它的方法都只是一个页面,让访问者自己手动点右上角浏览器打开,而这个不同,是可以直接自动跳转的。 安卓访问时可以直接自动跳转浏览器;IOS 就复杂...
  • 播放器可以完成:开机自动打开指定网页,自动运行浏览器打开指定网页。 设计要求: 1、通电自动开机,无需操作自动运行浏览器 2、自动打开指定的网站(网页)。 3、客户可以远程修改网页,达到所有的电视机...
  • 网页点击某个按钮跳转到APP之后,正常使用,可是当你打开手机后台应用时却发现APP竟然在浏览器里,我擦,这怎么能行呢!,其实用户用起来也没啥感觉,就是在APP中使用的,只不过两者合体了,这样如果你想杀死...
  • 本文实例讲述了JS打开新窗口防止被浏览器阻止的方法。分享给大家供大家参考。具体分析如下: 用传统的window.open()方式打开新窗口,会被浏览器阻止,那么,我们如何才能让JS打开新窗口不被浏览器阻止呢?其实办法...
  • Android调用系统自带浏览器打开网页的实现方法在Android中可以调用自带的浏览器,或者指定一个浏览器来打开一个链接。只需要传入一个uri,可以是链接地址。启动android默认浏览器在Android程序中我们可以通过发送...
  • 微信跳转链接,微信跳转链接生成,微信跳转浏览器,微信跳转自带浏览器,安卓微信跳转,微信跳转浏览器下载app,提供微信内部浏览器自动打开外部默认浏览器下载apk应用,跳转外部默认浏览器打开指定链接。
  • 一、核心模块 shell const { shell } = require('electron') var aHref = document.querySelector('#ahref') aHref.onclick = function (e) { e.preventDefault() ... let href = this....index.js var el
  • 关于浏览器缓存 浏览器缓存,有时候我们需要他,因为他可以提高网站性能和浏览器速度,提高网站性能。但是有时候我们又不得不清除缓存,因为缓存可能误事,出现一些错误的数据。像股票类网站实时更新等,这样的网站...
  • 主要介绍了Node.JS在命令行中检查Chrome浏览器是否安装,并打开指定网址,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
  • 但在使用微信分享链接和营销方案的过程中经常会遇到分享链接在微信内被拦截的情况,导致引流来的用户由于无法打开网页而选择流失。更过分的是,由于都是新用户,故用户即使知道链接无法打开也不会选择反馈,导致问题...
  • 功能:打开一个新的窗口,并在窗口中装载指定URL地址的网页。  说明: open方法用于打开一个新的浏览器窗口,并在新窗口中装入一个指定的URL地址; open方法在打开一个新的浏览器窗口时,还可以指定窗口的名称(第二...
  • JS禁止浏览器打开控制台或查看源代码 在做支付的时候为了保证提交参数的安全、以及为了保证重定向时地址不被查看和修改,必须要禁用浏览器的控制台或源码查看功能,以保证参数及地址的安全不被修改。 参考代码如下...
  • 浏览器核心:浏览器引擎。IE使用的浏览器引擎是Trident ,Firefox使用Gecko,Safari和Chrome使用Webkit。 DNS解析:当用户输入一个网址并按下回车键的时候,浏览器得到了一个域名。而在实际通信过程中,我们需要的是...
  • 主要介绍了手机浏览器唤起微信分享功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 跳出微信打开一个指定的我们自己的页面, 拿到这个需求后我们团队分开去找资料研究方案,通过微信的开发文档、腾讯的第三方开发文档我们都查阅过资料但是最终只找到一些历史性的资料也就是以前可以现在已经全部封闭...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 177,789
精华内容 71,115
关键字:

js指定浏览器打开网页

友情链接: sizhouDIY.zip