精华内容
下载资源
问答
  • 手机端微信朋友圈微信分享代码是一款类似微信分享wap版遮罩层提示效果,支持设置任意的提示语。
  • 特效描述:html5手机 分享微信朋友圈。html5手机端分享微信朋友圈代码代码结构1. HTML代码发送给朋友分享到朋友圈button{width:100%;text-align:center;border-radius:3px;}.button2{font-size:16px;padding...

    特效描述:html5手机端 分享微信朋友圈。html5手机端分享微信朋友圈代码

    代码结构

    1. HTML代码

    

    icon_msg.png 发送给朋友

    icon_timeline.png 分享到朋友圈

    button{width:100%;text-align:center;border-radius:3px;}

    .button2{font-size:16px;padding:8px 0;border:1px solid #adadab;color:#000000;background-color: #e8e8e8;background-image:linear-gradient(to top, #dbdbdb, #f4f4f4);background-image:-webkit-gradient(linear, 0 100%, 0 0, from(#dbdbdb),to(#f4f4f4));box-shadow: 0 1px 1px rgba(0,0,0,0.45), inset 0 1px 1px #efefef; text-shadow: 0.5px 0.5px 1px #ffffff;}

    .button2:active{background-color: #dedede;background-image: linear-gradient(to top, #cacaca, #e0e0e0);background-image:-webkit-gradient(linear, 0 100%, 0 0, from(#cacaca),to(#e0e0e0));}

    #mess_share{margin:15px 0;}

    #share_1{float:left;width:49%;}

    #share_2{float:right;width:49%;}

    #mess_share img{width:22px;height:22px;}

    #cover{display:none;position:absolute;left:0;top:0;z-index:18888;background-color:#000000;opacity:0.7;}

    #guide{display:none;position:absolute;right:18px;top:5px;z-index:19999;}

    #guide img{width:260px;height:180px;}

    var _system={

    $:function(id){return document.getElementById(id);},

    _client:function(){

    return {w:document.documentElement.scrollWidth,h:document.documentElement.scrollHeight,bw:document.documentElement.clientWidth,bh:document.documentElement.clientHeight};

    },

    _scroll:function(){

    return {x:document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft,y:document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop};

    },

    _cover:function(show){

    if(show){

    this.$("cover").style.display="block";

    this.$("cover").style.width=(this._client().bw>this._client().w?this._client().bw:this._client().w)+"px";

    this.$("cover").style.height=(this._client().bh>this._client().h?this._client().bh:this._client().h)+"px";

    }else{

    this.$("cover").style.display="none";

    }

    },

    _guide:function(click){

    this._cover(true);

    this.$("guide").style.display="block";

    this.$("guide").style.top=(_system._scroll().y+5)+"px";

    window.οnresize=function(){_system._cover(true);_system.$("guide").style.top=(_system._scroll().y+5)+"px";};

    if(click){_system.$("cover").οnclick=function(){

    _system._cover();

    _system.$("guide").style.display="none";

    _system.$("cover").οnclick=null;

    window.οnresize=null;

    };}

    },

    _zero:function(n){

    return n<0?0:n;

    }

    }

    展开全文
  • 微信分享

    2018-10-16 19:01:20
    使用场景:wap端分享链接 官方网站:https://mp.weixin.qq.com 开发条件 申请微信公众平台账号 获取AppId,AppSecret 添加ip白名单 绑定域名并下载txt文档 配置截图 后台开发步骤 获取access_token...

    使用场景:wap端分享链接
    官方网站:https://mp.weixin.qq.com

    开发条件

    1. 申请微信公众平台账号
    2. 获取AppId,AppSecret
    3. 添加ip白名单
    4. 绑定域名并下载txt文档

    配置截图
    配置截图
    后台开发步骤

    1. 获取access_token(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183)
    2. 获取ticket(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115)
    3. 生成签名,并向前台响应如下参数

    前台开发步骤

    1. 引入js文件(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115)
    2. Ajax请求后台获取如下参数
    3. 在wx.ready中调用需要使用的接口,并给相应的参数值

    注意事项

    1 access_token的时效为7200s,调用接口的频次有上限,将token妥善保管。减少access_token获取的次数。
    2 必须绑定域名
    3 .txt文档放到域名跟目录下

    package com.dsj.data.web.utils;
    import java.io.UnsupportedEncodingException;
    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;
    import java.util.Formatter;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.UUID;
    
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    
    public class Sign {
    	
    	private static final Logger LOGGER = LoggerFactory.getLogger(Sign.class);
    	
        public static void main(String[] args) {
            String jsapi_ticket = "sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg";
    
            // 注意 URL 一定要动态获取,不能 hardcode
            String url = "http://example.com";
            Map<String, String> ret = sign(jsapi_ticket, url);
            for (Map.Entry entry : ret.entrySet()) {
                System.out.println(entry.getKey() + ", " + entry.getValue());
            }
        };
    
        public static Map<String, String> sign(String jsapi_ticket, String url) {
            Map<String, String> ret = new HashMap<String, String>();
            String nonce_str = create_nonce_str();
            String timestamp = create_timestamp();
            String string1;
            String signature = "";
    
            //注意这里参数名必须全部小写,且必须有序
            string1 = "jsapi_ticket=" + jsapi_ticket +
                      "&noncestr=" + nonce_str +
                      "&timestamp=" + timestamp +
                      "&url=" + url;
            System.out.println(string1);
    
            try
            {
                MessageDigest crypt = MessageDigest.getInstance("SHA-1");
                crypt.reset();
                crypt.update(string1.getBytes("UTF-8"));
                signature = byteToHex(crypt.digest());
            }
            catch (NoSuchAlgorithmException e)
            {
                e.printStackTrace();
            }
            catch (UnsupportedEncodingException e)
            {
                e.printStackTrace();
            }
    
            ret.put("url", url);
            ret.put("jsapi_ticket", jsapi_ticket);
            ret.put("nonceStr", nonce_str);
            ret.put("timestamp", timestamp);
            LOGGER.info(" sign timestamp: {}", timestamp);
            LOGGER.info(" sign nonce_str:{}",  nonce_str);
            LOGGER.info(" sign signature:{}",  signature);
            ret.put("signature", signature);
    
            return ret;
        }
    
        private static String byteToHex(final byte[] hash) {
            Formatter formatter = new Formatter();
            for (byte b : hash)
            {
                formatter.format("%02x", b);
            }
            String result = formatter.toString();
            formatter.close();
            return result;
        }
    
        private static String create_nonce_str() {
            return UUID.randomUUID().toString();
        }
    
        private static String create_timestamp() {
            return Long.toString(System.currentTimeMillis() / 1000);
        }
    }
    
    
    package com.dsj.data.wap.wx;
    
    import java.io.IOException;
    import java.util.HashMap;
    import java.util.Map;
    
    import javax.servlet.http.HttpServletRequest;
    
    import org.apache.commons.lang3.StringUtils;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.ResponseBody;
    import org.springframework.web.client.RestTemplate;
    import com.dsj.common.utils.json.JsonMapper;
    import com.dsj.common.utils.redis.one.RedisPoolUtil;
    import com.dsj.common.utils.spring.ConfigUtils;
    import com.dsj.data.web.utils.Sign;
    
    @Controller
    @RequestMapping("weixinIndex")
    public class WXShareController {
    
    	private static final Logger LOGGER = LoggerFactory.getLogger(WXShareController.class);
    	
    	private RestTemplate httpClientRestTemplate = new RestTemplate();
    	
    	@RequestMapping("getSLBWXInfoForShare")
    	@ResponseBody
    	public Map<String, String> getSLBWXInfoForShare(String url) {
    		url.replace("?from=singlemessage&isappinstalled=0", "");
        	Map<String, String> sign = sign(url);
        	return sign;
        }
        
        //1微信公众号需要设置白名单    2. access_token时效性为两小时,每天有请求次数限制,存放redis/session  3测试必须要有域名,且端口为80 (项目名可有可无)
        @SuppressWarnings("unchecked")
    	public Map<String, String> sign(String url) {
    		LOGGER.info("share sign start:{}", url );
    		Map<String, String> sign = new HashMap<String, String>();
    		 //String nonceStr =  "44e98c4fa5cb5c85dfff1a178673ec97";
             //String appId = "wxf750030c2d7f3ee2";
             String nonceStr = ConfigUtils.instance.getWxNonceStr();
             String appId = ConfigUtils.instance.getWxFxApi();
    			String accessToken = RedisPoolUtil.get("wxAccessToken");
    			String forObject = "";
    			JsonMapper jsonMapper = JsonMapper.nonDefaultMapper();
    			
    			if (StringUtils.isBlank(accessToken)) {
    				// 微信分享签名
    				String refreshToken = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+ appId +"&secret=" + nonceStr;
    				forObject = httpClientRestTemplate.getForObject(refreshToken, String.class, new HashMap<String, Object>());
    				LOGGER.info("wei xin rollback data: {}", forObject);
    				Map<String, Object> fromJson = jsonMapper.fromJson(forObject, Map.class);
    				Object object = fromJson.get("access_token");
    				accessToken = (String)object;
    				RedisPoolUtil.setex("wxAccessToken", accessToken, 5400);//设置一个半小时时效性
    				LOGGER.info("accessToken from weChet:{}", accessToken);
    			}else{
    				LOGGER.info("accessToken from redis:{}", accessToken);
    			}
    			String getTicket = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token="+ accessToken +"&type=jsapi";
    			forObject = httpClientRestTemplate.getForObject(getTicket, String.class, new HashMap<String, Object>());
    			Map<String, Object> fromJson = jsonMapper.fromJson(forObject, Map.class);
    			String errmsg = (String)fromJson.get("errmsg");
    			LOGGER.info("result:{}", errmsg);
    			if (errmsg.equals("ok")) {
    				String ticket = (String)fromJson.get("ticket");
    				LOGGER.info("weixin share get ticket:{}", ticket);
    				sign = Sign.sign(ticket, url);
    				sign.put("appId", appId);
    				LOGGER.info("weixin share sign end:{}", sign);
    			}
    		return sign;
    	}
        
    	
    }
    
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
    	<meta name="baidu-site-verification" content="GuW0deLRPn" />
    	<meta charset="UTF-8">
    	<title>测试支付</title>
    	<meta content="支付" name="keywords">
        <meta content="测试支付" name="description">
    	<#include "common/taglibs.ftl">
    	<link rel="icon" href="${ctx}/static/front/img/favicon.ico" type="image/x-icon">
    	<link rel="shortcut icon" href="${ctx}/static/front/img/favicon.ico" type="image/x-icon">
    	<script src="${ctx }/static/front/js/jquery.js"></script>
    </head>
    <body>
      	<!-- 分享 -->
      	 <div class="bdsharebuttonbox" data-tag="share_1">
              <a class="bds_tsina" data-cmd="tsina"></a>
              <a class="bds_weixin" data-cmd="weixin"></a>
              <a class="bds_qzone" data-cmd="qzone"></a>
              <a class="bds_sqq" data-cmd="sqq"></a>
    </body>
    
    <script type="text/javascript">
        //分享
        var shareTitle = '分享标题';
    
        var shareName = '分享名称';
        //分享
        window._bd_share_config = {
            "common": {
                "bdSnsKey": {'tsina': '1546630873'},
                'bdText': shareName,
                "bdDesc": shareTitle,
                "bdMini": "2",
                'bdPic': 'http://dasouk.oss-cn-qingdao.aliyuncs.com/upload/pic/20171114104504942098.jpg',
                "bdMiniList": false,
                "bdStyle": "1",
                "bdSize": "24",
                "bdPopupOffsetLeft": "-235"
            },
            share: [{
                "bdSize": 24
            }]
        };
        with (document)0[(getElementsByTagName('head')[0] || body).appendChild(createElement('script')).src = 'http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion=' + ~(-new Date() / 36e5)];
        setInterval(function () {
            $("#bdshare_weixin_qrcode_dialog").css("height", "320px");
        }, 300)
    </script>
    
    <script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
    <script>
        $(function () {
            /* 微信分享 */
            var URL = window.location.href;
            $.ajax({
                url: "${ctx}/weixinIndex/getWXInfoForShare",
                type: "post",
                dataType: "json",
                data: {url: URL},
                success: function (data) {
                    wx.config({
                        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                        appId: data.appId, // 必填,公众号的唯一标识
                        timestamp: data.timestamp, // 必填,生成签名的时间戳
                        nonceStr: data.nonceStr, // 必填,生成签名的随机串
                        signature: data.signature,// 必填,签名,见附录1
                        jsApiList: [
                            'onMenuShareAppMessage',//分享给朋友
                            'onMenuShareTimeline',//分享到朋友圈
                            'onMenuShareQQ',//分享到QQ
                            'onMenuShareQZone'//分享到QQ空间
                        ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
                    });
                    //微信分享
                    wx.ready(function () {
                        /* 分享给朋友 */
                        wx.onMenuShareAppMessage({
    						title: '高超杰测试', // 分享标题
                            desc: '业绩不错!', // 分享描述
                            imgUrl: 'http://dasouk.oss-cn-qingdao.aliyuncs.com/upload/pic/20171017101400326813.png',
    
                            type: 'link', // 分享类型,music、video或link,不填默认为link
                            link: URL, // 分享链接
                            dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
                            success: function () {
                                //alert("分享成功");
    
                            },
                            cancel: function () {
                                // 用户取消分享后执行的回调函数
                            }
    
                        });
                        /* 分享到朋友圈 */
                        wx.onMenuShareTimeline({
                            title: '123123', // 分享标题
                            desc: '1312!', // 分享描述
                            link: URL, // 分享链接
                            imgUrl: 'http://dasouk.oss-cn-qingdao.aliyuncs.com/upload/pic/20171017101400326813.png', // 分享图标
                            success: function () {
    
    
                            },
                            cancel: function () {
                                // 用户取消分享后执行的回调函数
                            }
    
                        });
                        /* 分享到QQ */
                        wx.onMenuShareQQ({
                            title: '123123', // 分享标题
                            desc: '123123!', // 分享描述
                            link: URL, // 分享链接
                            imgUrl: 'http://dasouk.oss-cn-qingdao.aliyuncs.com/upload/pic/20171017101400326813.png', // 分享图标
                            success: function () {
    
    
                            },
                            cancel: function () {
                                // 用户取消分享后执行的回调函数
                            }
    
                        });
                        /* 分享到QQ空间 */
                        wx.onMenuShareQZone({
                            title: '12312', // 分享标题
                            desc: '123123!', // 分享描述
                            link: URL, // 分享链接
                            imgUrl: 'http://dasouk.oss-cn-qingdao.aliyuncs.com/upload/pic/20171017101400326813.png', // 分享图标
                            success: function () {
    
    
                            },
                            cancel: function () {
                                // 用户取消分享后执行的回调函数
                            }
                        });
    
                    });
                }
            })
        });
    </script>
    </html>
    
    
    
    展开全文
  • 微信分享,咋一看好像很复杂,实则非常简单。只需要调用微信官方出的微信jssdk,加上些许配置,就可以实现h5页面微信上的分享,官方文档地址为:...
  • 微信端直接跳WAP

    2020-10-22 17:32:50
    微信WAP是怎么实现的呢,下面和大家分享下… 原理很简单,只需要跳转平台创建一条落地页URL,获取一条超链接即可,创建后分配给你一个可以唤起微信的超链接,获取到的超链接放到你网站即可。微信WAP 接口,能...

    现在几乎所有人都使用微信APP,而且对于要做推广的人,所有的产品几乎都离不开微信的推广,然而腾讯会维护微信生态圈,都不会自动跳转到你推广的链接上,通常都会出现下面的提示,那要怎样实现在微信内置浏览器里打开指定页面,那就需要使用微信跳WAP来实现。微信跳WAP是怎么实现的呢,下面和大家分享下…
    正常情况下在微信中打开链接会有各种各样的限制,无法在微信内打开常用下载软件,APP等,链接发到微信中,微信会判断是不是可以让你从里面打开,识别是否合法,网上流传的各种微信打开下载链接,微信一更新基本失效。下面给大家分享的一种方式是:直接判断微信的ua,如果是在微信内置浏览器中打开,弹出一个遮罩提示用户在浏览器中打开下载,并且不加关闭的按钮。这样用户就只能在浏览器中打开,就可以直接下载应用了,不用管微信如何的更新。
    在这里插入图片描述
    原理很简单,只需要在跳转平台创建一条落地页URL,获取一条超链接即可,创建后分配给你一个可以唤起微信的超链接,获取到的超链接放到你网站即可。微信跳WAP 接口,能微信环境下自动切换,过渡中间的环节,直接跳转到推广的接口,这种接口大多用于淘宝客等各行业中, 苹果用户即可在微信内直接下载app也可以跳转浏览器下载,安卓用户则自动打开手机浏览器下载app, 如果不含下载文件,则直接从微信内跳转到外部浏览器访问指定的页面 。

    namespace ConsoleAPI{
        class Program{
            static void Main(string[] args){
                string url = "http://api.monkeyapi.com";
    
                var parameters = new Dictionary<string, string>();
    
                parameters.Add("appkey" , "appkey"); //您申请的APPKEY
                parameters.Add("url" , "www.monkeyapi.com"); //需要查询的网站
    
                string result = sendPost(url, parameters, "post");
    
                // 代码中JsonObject类下载地址:http://download.csdn.net/download/gcm3206021155665/7458439
                JsonObject newObj = new JsonObject(result);
                String errorCode = newObj["error_code"].Value;
    
                if (errorCode == "0")
                {
                    Debug.WriteLine("成功");
                    Debug.WriteLine(newObj);
                }
                else
                {
                    //Debug.WriteLine("请求异常");
                    Debug.WriteLine(newObj["error_code"].Value+":"+newObj["reason"].Value);
                }
            }
    
            /// <summary>
            /// Http (GET/POST)
            /// </summary>
            /// <param name="url">请求URL</param>
            /// <param name="parameters">请求参数</param>
            /// <param name="method">请求方法</param>
            /// <returns>响应内容</returns>
            static string sendPost(string url, IDictionary<string, string> parameters, string method){
                if (method.ToLower() == "post")
                    {
                        HttpWebRequest req = null;
                        HttpWebResponse rsp = null;
                        System.IO.Stream reqStream = null;
                    try
                    {
                        req = (HttpWebRequest)WebRequest.Create(url);
                        req.Method = method;
                        req.KeepAlive = false;
                        req.ProtocolVersion = HttpVersion.Version10;
                        req.Timeout = 60000;
                        req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
                        byte[] postData = Encoding.UTF8.GetBytes(BuildQuery(parameters, "utf8"));
                        reqStream = req.GetRequestStream();
                        reqStream.Write(postData, 0, postData.Length);
                        rsp = (HttpWebResponse)req.GetResponse();
                        Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);
                        return GetResponseAsString(rsp, encoding);
                    }
                        catch (Exception ex)
                    {
    
    展开全文
  • 这里博主为大家分享了PHP判断的两个实例,一是PHP判断是手机还是PC,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下 1、判断是否是手机function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定...

    欢迎大家关注我的其他Github博客简书,互相交流!

    在这里博主为大家分享了PHP判断的两个实例,一是PHP判断是手机端还是PC端,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下
    1、判断是否是手机端

    function isMobile() {
      // 如果有HTTP_X_WAP_PROFILE则一定是移动设备
      if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
        return true;
      }
      // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
      if (isset($_SERVER['HTTP_VIA'])) {
        // 找不到为flase,否则为true
        return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
      }
      // 脑残法,判断手机发送的客户端标志,兼容性有待提高。其中'MicroMessenger'是电脑微信
      if (isset($_SERVER['HTTP_USER_AGENT'])) {
        $clientkeywords = array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel',
        'lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi',
        'openwave','nexusone','cldc','midp','wap','mobile','MicroMessenger');
        // 从HTTP_USER_AGENT中查找手机浏览器的关键字
        if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
          return true;
        }
      }
      // 协议法,因为有可能不准确,放到最后判断
      if (isset ($_SERVER['HTTP_ACCEPT'])) {
        // 如果只支持wml并且不支持html那一定是移动设备
        // 如果支持wml和html但是wml在html之前则是移动设备
        if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') ===
        false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
          return true;
        }
      }
      return false;
    }

    2、判断是否是微信内置浏览器

    function isWeixin() {
      if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false) {
        return true;
      } else {
        return false;
      }
    }
    展开全文
  • 目前,HTML5手机wap网站、微信公众号、APP这三种载体都越来越火了,而且三者都有各自的一些优势和劣势。 对于有条件来说的公司,基本这3项都会涉及。而且重点配合发力来运营这些产品。 下面我们来一起看看...
  • 微信分享功能

    2018-01-30 11:31:50
     debug: false, // 开启调试模式,调用的所有api的返回值会客户端alert出来,若要查看传入的参数,可以pc打开,参数信息会通过log打出,仅pc时才会打印。  appId: " ", // 必填,公众号的唯一标识||后台...
  • php 微信分享

    2019-09-21 19:03:38
    后端 <...namespace app\wap\controller; use think\Controller; /*** * * 测试 * */ class Test extends Controller { private $appId; private $appSecret; pri...
  • Asp微信支付H5接口Demo:适用于手机微信以外的浏览器 现在学习ASP的人越来越少了,我就是那个掉到asp坑里一直没爬上来的。但也一直认为没什么别的语言能做到asp做不到的。遇上了网站项目需要asp的支付,网上找到...
  • 微信分享

    2017-04-07 16:10:22
    // 开启调试模式,调用的所有api的返回值会客户端alert出来,若要查看传入的参数,可以pc打开,参数信息会通过log打出,仅pc时才会打印。 appId : message.appid, // 必填,公众号的唯一标识 ...
  • 这里博主为大家分享了PHP判断的两个实例,一是PHP判断是手机还是PC,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下1、判断是否是手机function isMobile() {// 如果有HTTP_X_WAP_PROFILE则一定是...
  • //第一部分微信分享 //参考:https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html //步骤一:绑定域名 //先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 //步....
  • 于是便集成了点微同城原生微信登录,原生微信支付,原生支付宝支付以及扫一扫,长按保存海报图片,海报图片分享至朋友圈等这些实用的功能。下面就来给大家分享一下点微信同城APP打包的方法 准备材料和工具: 1....
  • 想必各位wap端时都遇到过这样的场景吧  ----自定义分享标题、图片、描述 接下来小编给大家讲解下分享相关操作 预期效果 原始的分享效果: 使用微信JS-SDK的分享效果: 可以看出缩略图,标题,摘要...
  • 微信分享等设置 -- 缩略图等 1、请求‘接口注入权限验证配置’参数   var weixinParam = null; //自定义分享内容 var shareObj = { title: '', // 分享标题 desc: '', // 分享描述 link:...
  • 手机浏览器Wap端跳转微信接口作用是什么? 用户本地浏览器浏览页面的时候,如果需要用户关注自己的微信号,之前的做法是发一个二维码给用户,用户扫码关注。但是如果利用手机浏览器wap端直接跳转微信这个接口,就...
  • ECshop3.6.0开源商城,不可用于商业用途,仅限学习分享,含测试文件、数据库、wap商城站点、微信商城、PC全电商平台,有安装说明
  • 微信自定义分享

    2018-09-06 10:57:31
    // 分享图标 ,可控制器传递 success: function () { // 用户确认分享后执行的回调函数 }, cancel: function () { // 用户取消分享后执行的回调函数 } }); wx.onMenuShareTimeline({...
  • 自定义微信分享链接 判断是否是微信的方法 //判断是否是微信浏览器的函数 export function isWeiXin() { var ua = window.navigator.userAgent.toLowerCase(); if ( ua.match(/MicroMessenger/i) == '...
  • 1.主要实现通过前端页面中实现分享功能。依赖了一段nativeShare.js文件。(我放在文章最后面,直接复制就可) 参考了他人写法,我自己修改了页面效果,现在更简洁。大家如果使用直接复制我的nativeShare.js就可以...
  • 本文实例为大家分享了PHP判断的两个实例,一是PHP判断是手机还是PC,二是PHP判断是否是微信浏览器,供大家参考,具体内容如下 1、判断是否是手机 function isMobile() { // 如果有HTTP_X_WAP_PROFILE则一定...
  • WAP端功能介绍: 城市切换 触屏版会根据打开的用户地区进行自动城市更新,弹出提示,是否回到当前城市。 登陆注册 用户可以用QQ或者手机号码登陆触屏版进行购物,减少繁琐的输入选项。 在线搜索 触屏版首页有...
  • 分享微信h5支付源码

    2019-11-21 10:04:16
    <... * 微信支付服务器下单 * 微信APP支付文档地址: https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_6 * 使用示例 * 构造方法参数 * 'appid' => //填写微信分配的公众账...
  • 改造聚合影视+聚合直播+在线小说+短视频+在线音乐+电视直播+pc+wap+app+微信 1.后台对接苹果CMS10采集系统 2.聚合直播对接虎牙直播 3.在线小说网站(可换成自己的小说网站) 4.短视频对接梨视频 5.内置在线听全网...
  • 分享微信h5支付经验

    2018-04-16 14:29:00
    1 <?... 2 //use Flight; 3 /** ... 4 * 微信支付服务器下单 5 * 微信APP支付文档地址: https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_6 6 * 使用示例 7 * 构造方法参数 8 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,076
精华内容 430
关键字:

wap端在微信分享