javascript特效是怎么做的

javascript特效是怎么做的,第1张

特效并不是单独针对js,还需要CSS,html

如果想要自学的话,建议先从最基础的javascript学起,吃透,要稳,不要贪快,一个例子要反复练习,甚至要从一个例子中进行推一反三或反N

基础打好之后,自己就可以写一些基本的特效了,比如简单的移动,变换了等等。

最后再去研究精简代码,改良代码,再多参考一些其它的js框架或者是演示什么的。

纯手打~~!

你可以先去绘学霸网站找“影视特效技术”板块的免费视频教程-点击进入完整入门到精通视频教程列表: wwwhuixuebanet/web/AppWebClient/AllCourseAndResourcePagetype=1&tagid=312&zdhhr-11y04r-97112773

想要系统的学习可以考虑报一个网络直播课,推荐CGWANG的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。

自制能力相对较弱的话,建议还是去好点的培训机构,实力和规模在国内排名前几的大机构,推荐行业龙头:王氏教育。

王氏教育全国直营校区面授课程试听复制后面链接在浏览器也可打开: wwwcgwangcom/course/ystxcoursemobilecheck/zdhhr-11y04r-97112773

在“影视特效技术”领域的培训机构里,王氏教育是国内的老大,且没有加盟分校,都是总部直营的连锁校区。跟很多其它同类型大机构不一样的是:王氏教育每个校区都是实体面授,老师是手把手教,而且有专门的班主任从早盯到晚,爆肝式的学习模式,提升会很快,特别适合基础差的学生。

大家可以先把绘学霸APP下载到自己手机,方便碎片时间学习——绘学霸APP下载: wwwhuixuebacomcn/Scripts/downloadhtml

例如<a href="#">首页</a>

样式为:

a{background:url('cv1jpg')} 默认为 cv1jpg

a:hover{background:url('cv2jpg')} 获得焦点后为 cv2jpg

没有必要用javascript 除非要实现复杂的效果

你说的 为什么在IE浏览器上完美运行的特效在360上变得面目全非了?

这就涉及到浏览器兼容性的问题

建议你在写css代之前 先使用 css reset 也就是重置各元素默认的样式

例如 h1 标签 在IE 浏览器 默认 加粗 有margin padding

chrome 浏览器 可能就没有加粗

360浏览器 可能就没有 margin

所以才产生各个浏览器的兼容性问题

感兴趣的话 可以去百度搜索下 css reset

希望可以帮到你

JavaScript网页设计与网站特效课堂实录百度网盘在线观看资源,免费分享给您:

https://panbaiducom/s/1x9xKoLW_9Iv01K2nGDJDhw

    提取码:1234

《JavaScript网页设计与网站特效课堂实录》是2015年10月1日清华大学出版社出版的图书,作者是刘贵国、晁代远。本书全面介绍JavaScript 的基本知识、高级技巧和实例,全书共17章,包括JavaScript 基础知识、HTML 基础、数据类型和变量、表达式与运算符、JavaScript程序核心语法、JavaScript核心对象、JavaScript中的事件、window对象、屏幕和浏览器对象、文档对象、历史对象和地址对象、表单对象和对象、Ajax基础、导航菜单特效案例、文字和特效案例、按钮链接和页面特效案例、广告代码特效案例等内容。

HTML5 DOM 选择器

// querySelector() 返回匹配到的第一个元素var item = documentquerySelector('item');consolelog(item);// querySelectorAll() 返回匹配到的所有元素,是一个nodeList集合var items = documentquerySelectorAll('item');consolelog(items[0]);1234567

阻止默认行为

// 原生jsdocumentgetElementById('btn')addEventListener('click', function (event) { event = event || windowevent; if (eventpreventDefault){ // w3c方法 阻止默认行为

eventpreventDefault();

} else{ // ie 阻止默认行为

eventreturnValue = false;

}

}, false);// jQuery$('#btn')on('click', function (event) { eventpreventDefault();

});1234567891011121314151617

阻止冒泡

// 原生jsdocumentgetElementById('btn')addEventListener('click', function (event) { event = event || windowevent; if (eventstopPropagation){ // w3c方法 阻止冒泡

eventstopPropagation();

} else{ // ie 阻止冒泡

eventcancelBubble = true;

}

}, false);// jQuery$('#btn')on('click', function (event) { eventstopPropagation();

});1234567891011121314151617

鼠标滚轮事件

$('#content')on("mousewheel DOMMouseScroll", function (event) {

// chrome & ie || // firefox

var delta = (eventoriginalEventwheelDelta && (eventoriginalEventwheelDelta > 0 1 : -1)) || (eventoriginalEventdetail && (eventoriginalEventdetail > 0 -1 : 1));

if (delta > 0) {

// 向上滚动

consolelog('mousewheel top');

} else if (delta < 0) { // 向下滚动

consolelog('mousewheel bottom');

}

});123456789101112

检测浏览器是否支持svg

function isSupportSVG() {

var SVG_NS = 'http://wwww3org/2000/svg'; return !!documentcreateElementNS &&!!documentcreateElementNS(SVG_NS, 'svg')createSVGRect;

}

// 测试consolelog(isSupportSVG());1234567

检测浏览器是否支持canvas

function isSupportCanvas() {

if(documentcreateElement('canvas')getContext){ return true;

}else{ return false;

}

}// 测试,打开谷歌浏览器控制台查看结果consolelog(isSupportCanvas());12345678910

检测是否是微信浏览器

function isWeiXinClient() {

var ua = navigatoruserAgenttoLowerCase();

if (uamatch(/MicroMessenger/i)=="micromessenger") {

return true;

} else {

return false;

}

}// 测试alert(isWeiXinClient());1234567891011

jQuery 获取鼠标在上的坐标

$('#myImage')click(function(event){

//获取鼠标在上的坐标

consolelog('X:' + eventoffsetX+'\n Y:' + eventoffsetY);

//获取元素相对于页面的坐标

consolelog('X:'+$(this)offset()left+'\n Y:'+$(this)offset()top);

});1234567

验证码倒计时代码

<!-- dom --><input id="send" type="button" value="发送验证码">12

// 原生js版本var times = 60, // 临时设为60秒

timer = null;

documentgetElementById('send')onclick = function () {

// 计时开始

timer = setInterval(function () {

times--; if (times <= 0) {

sendvalue = '发送验证码';

clearInterval(timer);

senddisabled = false;

times = 60;

} else {

sendvalue = times + '秒后重试';

senddisabled = true;

}

}, 1000);

}1234567891011121314151617181920

// jQuery版本var times = 60,

timer = null;

$('#send')on('click', function () {

var $this = $(this); // 计时开始

timer = setInterval(function () {

times--; if (times <= 0) {

$thisval('发送验证码');

clearInterval(timer);

$thisattr('disabled', false);

times = 60;

} else {

$thisval(times + '秒后重试');

$thisattr('disabled', true);

}

}, 1000);

});12345678910111213141516171819202122

常用的一些正则表达式

//匹配字母、数字、中文字符

/^([A-Za-z0-9]|[\u4e00-\u9fa5])$/

//验证邮箱

/^\w+@([0-9a-zA-Z]+[])+[a-z]{2,4}$/

//验证手机号

/^1[3|5|8|7]\d{9}$/

//验证URL

/^http:\/\/+\/

//验证身份证号码

/(^\d{15}$)|(^\d{17}([0-9]|X|x)$)/

//匹配中文字符的正则表达式

/[\u4e00-\u9fa5]/

//匹配双字节字符(包括汉字在内)

/[^\x00-\xff]/1234567891011121314151617181920

js时间戳、毫秒格式化

function formatDate(now) {

var y = nowgetFullYear(); var m = nowgetMonth() + 1; // 注意js里的月要加1

var d = nowgetDate(); var h = nowgetHours();

var m = nowgetMinutes();

var s = nowgetSeconds(); return y + "-" + m + "-" + d + " " + h + ":" + m + ":" + s;

}

var nowDate = new Date(2016, 5, 13, 19, 18, 30, 20);

consolelog(nowDategetTime()); // 获得当前毫秒数: 1465816710020consolelog(formatDate(nowDate));123456789101112131415

js限定字符数(注意:一个汉字算2个字符)

<input id="txt" type="text">//字符串截取function getByteVal(val, max) {

var returnValue = ''; var byteValLen = 0; for (var i = 0; i < vallength; i++) { if (val[i]match(/[^\x00-\xff]/ig) != null) byteValLen += 2; else byteValLen += 1; if (byteValLen > max) break;

returnValue += val[i];

} return returnValue;

}

$('#txt')on('keyup', function () {

var val = thisvalue; if (valreplace(/[^\x00-\xff]/g, "")length > 14) { thisvalue = getByteVal(val, 14);

}

});12345678910111213141516171819

js判断是否移动端及浏览器内核

var browser = {

versions: function() {

var u = navigatoruserAgent;

return {

trident: uindexOf('Trident') > -1, //IE内核

presto: uindexOf('Presto') > -1, //opera内核

webKit: uindexOf('AppleWebKit') > -1, //苹果、谷歌内核

gecko: uindexOf('Firefox') > -1, //火狐内核Gecko

mobile: !!umatch(/AppleWebKitMobile/), //是否为移动终端

ios: !!umatch(/\(i[^;]+;( U;) CPU+Mac OS X/), //ios

android: uindexOf('Android') > -1 || uindexOf('Linux') > -1, //android

iPhone: uindexOf('iPhone') > -1 , //iPhone

iPad: uindexOf('iPad') > -1, //iPad

webApp: uindexOf('Safari') > -1 //Safari

};

}

}

if (browserversionsmobile() || browserversionsios() || browserversionsandroid() || browserversionsiPhone() || browserversionsiPad()) {

alert('移动端');

}123456789101112131415161718192021

之前我用过一个检测客户端的库 觉得挺好用的,也推荐给大家 叫 devicejs,大家可以 Googel 或 百度

GItHub仓库地址:https://githubcom/matthewhudson/devicejs

getBoundingClientRect() 获取元素位置

//它返回一个对象,其中包含了left、right、top、bottom四个属性var myDiv = documentgetElementById('myDiv');var x = myDivgetBoundingClientRect()left;

var y = myDivgetBoundingClientRect()top;

// 相当于jquery的: $(this)offset()left、$(this)offset()top // js的:thisoffsetLeft、thisoffsetTop123456

HTML5全屏

function fullscreen(element) {

if (elementrequestFullscreen) {

elementrequestFullscreen();

} else if (elementmozRequestFullScreen) {

elementmozRequestFullScreen();

} else if (elementwebkitRequestFullscreen) {

elementwebkitRequestFullscreen();

} else if (elementmsRequestFullscreen) {

elementmsRequestFullscreen();

}}

fullscreen(documentdocumentElement);12345678910111213

欢迎分享,转载请注明来源:浪漫分享网

原文地址:https://www.hunlipic.com/langman/11783028.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-12-20
下一篇2023-12-20

发表评论

登录后才能评论

评论列表(0条)

    保存