}
button:hover {
background-position: 0 0;
}
清除浮动
/方法1/
.clear-fix{
clear: both;
display: block;
height: 0;
overflow: hidden;
}
/IE/
.clear{
overflow: auto; zoom: 1; /IE6/
}
/方法2/
&:after{
content: “”;
display: block;
height: 0;
overflow: hidden;
clear: both;
}
/方法3/
/将浮动元素用一个不浮动的 div 包裹起来/
表格宽度自适应
td {
white-space: nowrap;
}
任意阴影
.box-shadow {
background-color: #FF8020;
width: 160px;
height: 90px;
margin-top: -45px;
margin-left: -80px;
position: absolute;
top: 50%;
left: 50%;
}
.box-shadow:after {
content: “”;
width: 150px;
height: 1px;
margin-top: 88px;
margin-left: -75px;
display: block;
position: absolute;
left: 50%;
z-index: -1;
-webkit-box-shadow: 0px 0px 8px 2px #000000;
-moz-box-shadow: 0px 0px 8px 2px #000000;
box-shadow: 0px 0px 8px 2px #000000;
}
文本宽度自适应
pre {
white-space: pre-line;
word-wrap: break-word;
}
模糊文本
.blurry-text {
color: transparent;
text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
网页加载动画
loading:after {
overflow: hidden;
display: inline-block;
vertical-align: bottom;
animation: ellipsis 2s infinite;
content: “\2026”;
}
@keyframes ellipsis {
from {
width: 2px;
}
to {
width: 15px;
}
}
窗口漂浮物
This text will fly
解决 input:text 自动填充变黄的问题
input:-webkit-autofill{
-webkit-box-shadow: 0 0 0px 10000px white inset !important;
box-shadow: 0 0 0px 10000px white inset !important;
}
jQuery部分
========
返回头部
$(‘a.top’).click(function (e) {
e.preventDefault();
$(body).animate({scrollTop: 0}, 800);
});
预加载图片
$.preloadImages = function () {
for (var i = 0; i < arguments.length; i++) {
$(‘’).attr(‘src’, arguments[i]);
}
};
$.preloadImages(‘img/hover-on.png’, ‘img/hover-off.png’);
自动替换加载失败的图片
$(‘img’).on(‘error’, function () {
$(this).prop(‘src’, ‘img/broken.png’);
});
切换元素的各种样式
$(‘.btn’).hover(function () {
$(this).addClass(‘hover’);
}, function () {
$(this).removeClass(‘hover’);
});
禁用/启用提交按钮
$(‘input[type=“submit”]’).prop(‘disabled’, true);
$(‘input[type=“submit”]’).prop(‘disabled’, false);
组织默认事件
$(‘a.no-link’).click(function (e) {
e.preventDefault();
});
切换动画
//淡入淡出
$(‘.btn’).click(function () {
$(‘.element’).fadeToggle(‘slow’);
});
//滑入滑出
$(‘.btn’).click(function () {
$(‘.element’).slideToggle(‘slow’);
});
简单的手风琴样式
$(‘#accordion’).find(‘.content’).hide(); //关闭全部标签
$(‘#accordion’).find(‘.accordion-header’).click(function () {
var next = $(this).next();
next.slideToggle(‘fast’);
$(‘.content’).not(next).slideUp(‘fast’);
return false;
});
调整多个 div 一样高
var $columns = $(‘.column’);
var height = 0;
$columns.each(function () {
if ($(this).height() > height) {
height = $(this).height();
}
});
$columns.height(height);
同链接不同样式
$(‘a[href^=“http”]’).attr(‘target’, ‘_blank’);
$(‘a[href^=“//”]’).attr(‘target’, ‘_blank’);
$(‘a[href^="’ + window.location.origin + ‘"]’).attr(‘target’, ‘_self’); //cannot work in IE10
( " a [ h r e f ("a[href ("a[href=pdf]").addClass(‘pdf’);
( " a [ h r e f ("a[href ("a[href=doc]").addClass(‘doc’);
( " a [ h r e f ("a[href ("a[href=xls]").addClass(‘xls’);
通过内容查找元素
var search = $(‘#search’).val();
$(‘div:not(:contains("’ + search + ‘"))’).hide();
当其他元素获得焦点时触发
$(document).on(‘visibilitychange’, function (e) {
if (e.target.visibilityState === “visible”) {
console.log(‘Tab is now in view!’);
} else if (e.target.visibilityState === “hidden”) {
console.log(‘Tab is now hidden!’);
}
});
显示 Ajax 错误信息
$(document).ajaxError(function (e, xhr, settings, error) {
console.log(error);
});
禁用右键菜单
$(document).ready(function(){
$(document).bind(“contextmenu”, function(e){
e.preventDefault();
})
})
模拟 placeholder 属性
$(document).ready(function(){
var $input_text = $(“input[type=text]”);
$input_text.val(“Enter your words here…”);
var originalValue = input.val();
input.focus(function(){
if($.trim(input.val()) == originalValue){
input.val(“”);
}
}).blur(funtion(){
if($.trim(input.val()) == “”){
input.val(originalValue);
}
});
});
判断元素是否存在
$(document).ready(function(){
if($(‘#id’).length){
//do sth.
}
});
放大 标签面积
$(“div”).click(function(){
window.loaction = $(this).find(“a”).attr(“href”);
return false;
});
根据浏览器大小选择不同的类
$(document).ready(function(){
$(window).resize(function(){
if($(window).width() > 1200){
$(‘body’).addClass(‘large’);
} else {
$(‘body’).removeClass(‘large’)
}
});
});
自定义伪类选择器
. e x t e n d ( .extend( .extend(.expr[‘:’], {
moreThan500px:function(a){
return $(a).width > 500;
}
}); //create a pseudo selector ‘:moreThan500px’
禁用 jQuery 所以动画
$.fx.off = true;
判断鼠标左右键
$(“#id”).mousedown(function(e){
switch(e.witch){
case 1: //left click
break;
case 2: //middle click
break;
case 3: //right click
break;
default: break;
}
});
回车提交表单
$(“input”).keyup(function(e){
if(e.witch == 13 || e.keyCode == 13){
$(“#submit”).trigger(‘click’);
}
});
配置 Ajax 的全局参数
$(“#load”).ajaxStart(function(){
showLoading();
disableButton();
}).ajaxComplete(function() {
hideLoading();
enableButton();
});
用 siblings() 选择兄弟元素
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
javascript是前端必要掌握的真正算得上是编程语言的语言,学会灵活运用javascript,将对以后学习工作有非常大的帮助。掌握它最重要的首先是学习好基础知识,而后通过不断的实战来提升我们的编程技巧和逻辑思维。这一块学习是持续的,直到我们真正掌握它并且能够灵活运用它。如果最开始学习一两遍之后,发现暂时没有提升的空间,我们可以暂时放一放。继续下面的学习,javascript贯穿我们前端工作中,在之后的学习实现里也会遇到和锻炼到。真正学习起来并不难理解,关键是灵活运用。
…(img-GHiePpQU-1712338637950)]
[外链图片转存中…(img-NovyVtTb-1712338637950)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
[外链图片转存中…(img-CRuMg2jR-1712338637951)]
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
最后
javascript是前端必要掌握的真正算得上是编程语言的语言,学会灵活运用javascript,将对以后学习工作有非常大的帮助。掌握它最重要的首先是学习好基础知识,而后通过不断的实战来提升我们的编程技巧和逻辑思维。这一块学习是持续的,直到我们真正掌握它并且能够灵活运用它。如果最开始学习一两遍之后,发现暂时没有提升的空间,我们可以暂时放一放。继续下面的学习,javascript贯穿我们前端工作中,在之后的学习实现里也会遇到和锻炼到。真正学习起来并不难理解,关键是灵活运用。
[外链图片转存中…(img-5oTVvXVl-1712338637951)]
[外链图片转存中…(img-ixZVeR9G-1712338637951)]