question

2019-09-26  本文已影响0人  63eb7397f9be

1:before /:after伪元素默认是一个行内元素,设置width/height是无效的.可以把图片设为背景图片,通过bakckground-size来设置大小

.level_btn::after{content: '';display:block;position: absolute;right: 0;top: 0;background:url(../images/hand.png) center no-repeat;background-size: 1.3rem auto;width: 1.5rem;height: 2rem;}

.a{background-image:linear-gradient(to right,left,blue)}

.b{background-image:linear-gradient(180deg,left,blue)}

.c{background: linear-gradient(to right, red,orange,yellow,green,blue,indigo,violet); }

2.<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

meta是html中的元标签,其中包含了对应html的相关信息,客户端浏览器或服务器端的程序会根据这些信息进行处理。

HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容。

content(内容类型):重要!!这个网页的格式是文本的,网页模式

charset(编码):特别重要!!!这个网页的编码是utf-8,中文编码,需要注意的是这个是网页内容的编码,而不是文件本身的,其他类型的编码中文可能会出现乱码。

3.window.location.href="newUrl"

window.open("newUrl")  //Safari不兼容不会打开新页面

4.safari浏览器返回页面不刷新

在ios或者android上点击后退时,页面没有刷新而是直接读取缓存,页面上绑定在window上的事件消失了(例如onscroll)

微信换的内核是苹果的WKWebview 内核。Safari很早之前就使用了这个内核,而且微信官方明确表示,更换后,将和Safari 表现出高度的相似性。

var browserRule = /^.*((iPhone)|(iPad)|(Safari))+.*$/;if(browserRule.test(navigator.userAgent)) { window.onpageshow =function(event) {if(event.persisted) { window.location.reload() } }; }

首先,我们需要判定它是 iPhone、iPad或者Safari 的一种,然后针对他们进行特殊处理。

window.onpageshow 是会在页面加载显示后触发,onpageshow 事件类似于 onload 事件,onload 事件在页面第一次加载时触发, onpageshow 事件在每次加载页面时触发,即 onload 事件在页面从浏览器缓存中读取时不触发。

为了查看页面是直接从服务器上载入还是从缓存中读取,你可以使用 PageTransitionEvent 对象的 persisted 属性来判断。 如果页面从浏览器的缓存中读取该属性返回 ture,否则返回 false。如上代码所示,如果是从缓存加载的,就刷新页面。

为了查看页面是直接从服务器上载入还是缓存中读取。可以使用PageTransitionEvent对象得peisisted属性来判断。如果页面从浏览器的缓存中读取该属性返回true,否则返回false,如上述代码,如果是从缓存中加载的,就刷新页面

之前,reload方法被微信无情的枪毙掉了,但是换了内核之后,这个方法是好用的。

解决办法  window.open()在Safari不兼容

var newTab = window.open('about:blank');

        $.ajax({

            url: "",

            dataType: 'jsonp',

            data: "param=" + JSON.stringify(param),

            jsonp: 'callback',

            success: function (result) {

                if (result.status == '1') { //图书 填写 收货地址

                    var url2 = '';

                    newTab.location.href = url2;

            }

        });

5.previousSibling 属性返回同一树层级中指定节点的前一个节点。nextSibling("content");

prev()和next()是jq的

在jq中两个元素相比较的话不能使用==判断 使用is判断 $a.is($b)

6.监听iframe加载事件

$(document).ready(function(e){

          var iframe = document.getElementById("Box");   

        if (iframe.attachEvent) {   

            iframe.attachEvent("onload", function() {   

                //iframe加载完成后你需要进行的操作 

            });   

        } else {   

            iframe.onload = function() {   

                      //iframe加载完成后你需要进行的操作 

            };   

        } 

7.var a; 在for循环里边+=字符串的时候,会有个undefined,是因为在定义a的时候没有定义成字符串。

上一篇下一篇

猜你喜欢

热点阅读