技巧集合

玩游戏的人 很多时候都会遇到翻品牌  开宝箱。

技能站点

  • 哈克er News:相当的屌的针对编制程序的链接聚合网站
  • Programming reddit:同上
  • MSDN:微软相关的合法技术集中地,首如果文书档案类
  • infoq:公司级应用,关切软件开发领域
  • OSChina:开源技术社区,开源方面做的不错哦
  • cnblogs,51cto,csdn:常见的技艺社区,各有一艺之长
  • stackoverflow:IT技术问答网站
  • GitHub:全球最大的源代码管理平台,很多老牌开源项目都在地点,如Linux内核,
  • OpenStack等免费的it电子书:http://it-ebooks.info/
  • DevStore:开发者服务公司

总有人傻傻的在哪儿还纠结很久到底点哪二个! 纠结
 指不定翻哪3个会多一点,你肯定看到那么些卡片的奖项多 。   

没错的图书

  • 人件
  • 人月传说
  • 代码大全2
  • 电脑程序设计方法
  • 程序员的本人修养
  • 程序员修炼之道
  • 高功能程序员的修炼(成为一名特出的程序员其实跟写代码没有太大关系)
  • 深刻掌握放区救济总会括机种类
  • 软件杂文录
  • 算法导论(哈佛高校出版社)
  • 离线数学及其应用
  • 设计形式
  • 编制程序之美
  • 黑客与书法大师
  • 编制程序珠玑
  • C++ Prime
  • Effective C++
  • TCP/IP详解
  • Unix 编制程序艺术
  • 《精神分析引论》Freud
  • 化解:无压力工作的办法

那笔者就报告您好了  其实过多时候在你点开老大页面包车型的士时候你的翻牌结果早就随着你点开而请求到了。

阳台工具(都是开源的好东东哦)

  • Redmine/Trac:项目管理平台
  • Jenkins/Jira(非开源):持续集成系统(Apache
    Continuum,这么些是Apache下的CI系统,还没来得及研商)
  • Sonar:代码质管平台
  • git,svn:源代码版本控制系统
  • GitLib/Gitorious:构建协调的GitHub服务器
  • gitbook:https://www.gitbook.io/写书的好东西,当然用来写文书档案也很科学的
  • Travis-ci:开源项目不断集成必备,和GitHub相结合,https://travis-ci.org/
  • 开源测试工具、社区(Selenium、OpenQA.org)
  • Puppet:贰个机动管理引擎,能够适用于Linux、Unix以及Windows平台。所谓配置管理体系,就是管理机器内部诸如文件、用户、进度、软件包那么些财富。无论是管理1台,照旧上万台机械Puppet都能轻轻松松解决。
  • Nagios:系统状态监察和控制告警,还有个Icinga(完全匹配nagios全数的插件,工作原理,配置文件以及艺术,大概一模一样。配置不难,功用强大)
  • Ganglia:分布式监察和控制种类
  • fleet:分布式init系统

接下来 正是部分动画片效果 然后告知您的中奖结果是何许。
其实就很像你看的那种街头,赌碗 二个旗帜。

爬虫相关(好玩的工具)

  • Phantomjs
  • berserkJS(基于Phantomjs的精雕细刻版本)
  • SlimerJS
  • CasperJS
  • selenium

怎么 你的中号总是什么奖都抽不到  中号总是能够抽到部分事物。

Web 服务器性能/压力测试工具/负载均衡器

  • http_load: 程序十分小,解压后也不到100K
  • webbench:
    是Linux下的3个网站压力测试工具,最多能够效仿3万个冒出连接去测试网站的负载能力
  • ab: ab是apache自带的一款作用强大的测试工具
  • Siege:
    一款开源的下压力测试工具,能够根据配置对二个WEB站点实行多用户的面世访问,记录种种用户拥有请求进度的呼应时间,并在自然数额的产出国访问问下重新实行。
  • squid(前端缓存),nginx(负载),nodejs(没错它也能够,本身写点代码就能兑现高质量的负载均衡器):常用的负载均衡器
  • Piwik:开源网站访问量总结系统
  • ClickHeat:开源的网站点击情形热力图
  • HAProxy:高质量TCP /HTTP负载均衡器
  • ElasticSearch:搜索引擎基于Lucene
  • Page Speed SDK和YSLOW
  • HARAV4 Viewer: HA卡宴分析工具
  • protractor:E2E(end to end)自动化测试工具

 其实正是玩玩策划对用户的某些粘度数据的辨析  
还有便是对你用户的衰减做的有的计算分析做出来的。

Web 前端相关

  • GRUNT: js task runner
  • Sea.js: js模块化
  • knockout.js:MVVM开发前台,绑定技术
  • Angular.js: 使用超动感HTML & JS开发WEB应用!
  • Highcharts.js,Flot:常用的Web图表插件
  • Raw:格外科学的一款高档数据可视化学工业具
  • Rickshaw:时序图标库,可用以营造实时图表
  • JavaScript InfoVis Toolkit:另一款Web数据可视化插件
  • Pdf.js,在html中展现pdf
  • ACE,CodeMirror:Html代码编辑器(ACE甚好啊)
  • NProcess:绚丽的加载进程条
  • impress.js:让您营造出让人眩目标内容展现效果(类似的还有reveal)
  • Threejs:3DWeb库
  • Hightopo:基于Html5的2D、3D可视化UI库
  • jQuery.dataTables.js:中度灵活的报表插件
  • Raphaël:js,canvas绘图库,后来察觉百度指数的图形正是用它绘出来的
  • director.js:js路由模块,前端路由,Nodejs后端路由等,适合布局单页应用
  • pace.js:页面加载进度条
  • bower:Web包管理器
  • jsnice:有趣的js反编写翻译工具,猜压缩后的变量名 http://www.jsnice.org/
  • D3.js: 是多个基于JavaScript数据突显库(类似的还有P5.js)
  • Zepto.js:移动端替代jQuery的东东,当然也得以使用jquery-mobile.

UI框架:Foundation,Boostrap,Pure,EasyUI,Polymer

前端UI设计师必去的多少个网站:Dribbble,awwwards,unmatchedstyle,UIMaker

Mozilla 开发者宗旨:https://developer.mozilla.org/en-US/

图标能源:IcoMoon(笔者的最爱),Themify Icons,FreePik,Glyphiconsart

  • Dialog:万分完美的对话框
  • AdminLTE:github上的3个开源项目,基于Boostrap3的后台管理页面框架
  • Respond.js:让不懂爱的IE6-8援救响应式设计
  • require.js: js模块加载库
  • select2:比chosen具有越来越多特点的挑三拣四框替代库
  • AngularUI:集成angular.js的UI库
  • normalize.css: 选择了现代化正规化让各浏览器渲染出的html保持一致的库
  • CreateJS:Html5嬉戏引擎Less,Compass:简化CSS开发
  • emojify.js:用于自动识别网页上的Emoji文字并将其出示为图像
  • simditor:3个毋庸置疑的开源的html编辑器,简洁高效
  • Sencha: 基于html5的运动端支出框架
  • SuperScrollorama+Tween马克斯+skrollr:创设超酷的视差滚动作效果应网页动画
  • jquery-smooth-scroll:同上,平滑滚动插件
  • Animate.css:达成了种种卡通效果的css库
  • Emmet:前端工程师必备,ZenCode的前身
  • MagicDraw:Uml图工具

为啥  原来正是简简单单的开宝箱  以往 又增进了 碎片  符  等部格外在的事物。

大数额处理/数据解析/分布式工具

  • Hadoop:分布式的文件系统,结合其MapReduce编制程序模型能够用来做海量数据的批处理(Hive,Pig,HBase啥的就背着了),值得介绍的是Cloudera的Hadoop分支CDH5,基于YA福睿斯N
    M奥迪Q7v2集成了Spark可一贯用来生产条件的Hadoop,对于集团飞速构建数据仓库格外管用。

  • Ceph:Linux分布式文件系统(特点:无中央)

  • Storm:实时代洋气数据处理,能够看下IBM的一篇介绍
    (还有个Yahoo的S4,也是做流数据处理的)

  • 斯Parker:大规模流式数据处理(可以应付公司中普遍的二种多少处理场景:复杂的批量数目处理(batch
    data processing);基于历史数据的交互式查询(interactive
    query);基于实时数据流的数量处理(streaming data
    processing)),CSND有篇小说介绍的科学

  • 斯Parker Streaming:基于斯Parker的实时总计框架

  • 塔赫yon:分布式内部存款和储蓄器文件系统

  • Mesos:总计框架3个集群众管理理器,提供了有效的、跨分布式应用或框架的财富隔开和共享Impala:新一代开源大数量解析引擎,提供Sql语义,比-
    Hive强在速度上

  • SNAPPY:飞快的数据压缩系统,适用于Hadoop生态系统中

  • 卡夫卡:高吞吐量的分布式新闻队列系统

  • ActiveMQ:是Apache出品,最盛行的,能力强大的开源音讯总线

  • MQTT:Message Queuing Telemetry
    Transport,音讯队列遥测传输)是IBM开发的一个即时通信协议,有或者成为物联网的根本组成都部队分

  • RabbitMQ:记得OpenStack正是用的这些事物吗

  • ZeroMQ:宣称是将分布式计算变得更简明,是个分布式音信队列,可以看下云风的一篇小说的牵线开源的日志收集系统:scribe、chukwa、kafka、flume。那有一篇比较小说

  • Zookeeper:可信赖的分布式协调的开源项目

  • Databus:LinkedIn 实时低顺延数据抓取系统

数据源获取:Flume、谷歌(Google) Refine、Needlebase、ScraperWiki、BloomReach

类别化技术:JSON、BSON、Thrift、Avro、谷歌(Google) Protocol Buffers

NoSql:Apache Hadoop、Apache Casandra、MongoDB、Apache
CouchDB、Redis、BigTable、HBase、Hypertable、Voldemort、Neo4j

MapReduce相关:Hive、Pig、Cascading、Cascalog、mrjob、Caffeine、S4、MapR、Acunu、Flume、Kafka、Azkaban、Oozie、Greenplum

数据处理:RAV④ 、Yahoo! Pipes、Mechanical Turk、Solr/
Lucene、ElasticSearch、Datameer、Bigsheets、TinkerpopNLP自然语言处理:Natural
Language Toolkit、Apache OpenNLP、Boilerpipe、OpenCalais

机械学习:WEKA、Mahout、scikits.learn、SkyTree

可视化技术:GraphViz、Processing、Protovis、谷歌(Google) Fusion
Tables、Tableau、Highcharts、EChats(百度的还不易)、Raphaël.js

  • Kettle:开源的ETL工具
  • Pentaho:以工作流为骨干的开源BI系统
  • Mondrian:开源的Rolap服务器
  • Oozie:开源hadoop的工作流动调查度引擎

开源的数目解析可视化学工业具:Weka、Orange、KNIME

Cobar:阿里巴巴(Alibaba)的MySql分布式中间件

那正是拉长你对游戏的粘度  宝箱里面装的事物资总公司是有个别市场总值不菲的 装备
能买可是很贵 ,游戏策划会给你点便宜  让你开宝箱

C & C++

Thrift:用来拓展可增添且跨语言的劳动的支付(类似的还有个Avro,谷歌protobuf)。

libevent:是二个事变触发的网络库,适用于windows、linux、bsd等多样阳台,内部使用select、epoll、kqueue等种类调用管监护人件机制。(对了还有个libev呢)

Boost:不多说了,准C++标准库

Ptmalloc\Valgrind\Purify

NetworkServer架构:acceptor->dispatcher->worker(这么些不算工具哦)

breakpad:崩溃转储和分析模块,很多crashreport会用到

UI界面相关:MFC、BCG和QT那类的就隐瞒了,高端一点的还有Html和DirectUI技术:libcef(基于chrome内核的,想想使用html5费用页面,还真有点小震动啊)、HtmlLayout、Duilib、Bolt,非C++的,还有node-webkit也合情合理,集成了node和webkit内核。

等您开了一块  中期让您可见很容易的拿到那件产品的百分30左右  然后
难度升级 你就打啊 打  最后等您合成这一个事物的时候

22日游支付相关

MINA:使用Java开发手游和页游服务器(对了还有Netty,也很猛的,都以基于NIO的)

HP-Socket:见有稍许页游服务器使用那一个创设的

云风的技巧博客:http://blog.codingnow.com/

OGRE:家谕户晓的3D图形渲染引擎

OpenVDB:梦工厂C++的特效库,开源的

cocos2d:跨平台2D嬉戏引擎

unity3d:跨平台3D游戏引擎,极流行的哦

Nodejs:也有广大采纳它来支付手游和也有服务器(乐乎的Pomelo正是啊)

你所合成的 屠龙刀早就打折打折了, 你自个儿心灵想LZ是靠实力一刀一刀砍出来的
和前面这几个降价了 购买的不一致等 心里还特开心 。

日志聚合,分布式日志收集

Scribe:Twitter的(nodejs + scribe + inotify 同步日志)

logstash:强大的日记收集种类,能够依据logstash+kibana+elasticsearch+redis开发强大的日志分析平台

log.io: nodejs开发的实时日志收集序列

普拉多TP,实时传输协议与音录像

RTP,RTCP,RTSP-> librtp,JRTPLIB(遵循了RFC1889标准)

环形缓冲区,实时数据传输用

SDL,ffmpeg,live555,Speex

Red5:用Java开发开源的Flash流媒体服务器。它扶助:把拍子(VCD)和摄像(FLV)转换到播放流;
摄像客户端播放流(只接济FLV);共享对象;现场直播流发布;远程调用。

 碎片  ,符  不正是让你以为 加了这一个东西  在您开宝箱的时候 可能率会加大
 ,你就会愈加希望。

Python

埃里克,Eclipse+pydev,相比较不错的Python IDE

PyWin:Win32 api编程包

numpy:科学总计包,重要用以处理大型矩阵总括等,别的还有SciPy,Matplotlib

GUI相关:PyQt,PyQwt

supervisor:进度监察和控制工具

说到底用户的在线时间长度 能够做过多事   你所开支的概率也会加大。

Java相关

常用的IDE:IntelliJ IDEA,Eclipse,Netbeans

Web开发有关:汤姆cat、Resin、Jetty、WebLogic等,常用的组件Struts,Spring

HibernateNetty:
异步事件驱动互联网利用编制程序框架,用于高并发互连网编制程序比较好(NIO框架)

MINA:简单地开发高质量和高可靠性的网络应用程序(也是个NIO框架),不少手游服务端是用它支付的

jOOQ:java Orm框架Activiti:工作流引擎,类似的还有jBPM、Snaker

Perfuse:是3个用户界面包用来把有协会与无组织数据以全部交互性的可视化图形呈现出来.

Gephi:复杂网络分析软件,
其重要用以各样网络和复杂性系统,动态和分层图的并行可视化与探测开源工具

Nutch:有名的爬虫项目,hadoop正是从那几个类型中前进出来的

web-harvest:Web数据提取工具

POM工具:Maven+ArtifactoryNetflix

Curator:Netflix公司开源的3个Zookeeper client
library,用于简化Zookeeper客户端编制程序

Akka:一款基于actor模型完毕的 并发处理框架

Ecl埃玛:覆盖测试工具

好了 附上七个 canvas 刮刮乐吧  

.net相关

Xilium.CefGlue:基于CEF框架的.NET封装,基于.NET开发Chrome内核浏览器

CefSharp:同上,有一款WebKit的封装,C#和Js交互会更简便

netz:免费的 .NET 可执行文件压缩工具

斯马特Assembly:变态的.net代码优化混淆工具

NETDeob0:.net反混淆工具,真是魔高级中学一年级尺道高级中学一年级丈啊(还有个de4dot,在GitHub上,都以开源的)

ILMerge:将全数引用的DLL和exe文件打成多少个exe文件

ILSpy:开源.net程序反编写翻译工具

Javascript.NET:很不利的js执行引擎,对v8做了包装

NPOI: Excel操作

DotRAS:远程访问服务的模块

WinHtmlEditor: Winform下的html编辑器

SmartThreadPool:使用C#贯彻的,带高级特性的线程池

Snoop: WPF Spy Utility

Autofac: 轻量级IoC框架

HtmlAgilityPack:Html解析利器

Quartz.NET:Job调度

HttpLib:@CodePlex,简化http请求

SuperSocket:简化Socket操作,基于他的还有个SuperWebSocket,能够付出独立的WebSocket服务器了

DocX:未安装Office的意况下操作Word文件

Dapper:轻量级的OPRADOM类,质量不错

HubbleDotNet:帮衬过渡数据库的全文字笔迹检验索系统

fastJSON:@CodeProject,高品质的json体系化类

ZXing.NET:@CodePlex,Q奥迪Q5,条形码相关

南希:轻量级Http服务器,做个袖珍的Web应用能够摆脱IIS喽(南茜.Viewengines.Razor,能够进入Razor引擎)

AntiXSS:微软的XSS防御库Microsoft Web Protection

LibraryJint:JavaScript解释器

CS-Script:将C#代码文件作为脚本执行

Jexus:Linux下 高性能、易用、免费的ASP.NET服务器

Clay:将dynamic发挥的愈加灵敏,像写js一样写C#

DynamicJSON:不必定义数据模型获取json数据

Antlr:开源的语法分析器(归到C#不太适合,别的语言也得以去用)

SharpPcap:C#版的WinPcap调用端,牛逼的网络包分析库(自带PacketNotNet用于中国包装技协议分析)

Roslyn:C#,VB编译器

ImageResizer:
服务端自由支配图片大小,真乃神器也,对手提式有线电话机端传小图,PC端传大图,CMS用它很有利

UI相关:DevExpress, Fluent(Office 07风格), mui(Modern UI for WPF)

Net斯Parkerle:应用自动更新组件

ConfuserEx: 开源.net混淆工具

ServiceStack:
开源高质量Web服务框架,可用以营造高质量的REST服务Expression

Evaluator:Eval for C#,处理字符串表明式

http://nugetmusthaves.com/

始于的想法

常用工具

  • Fiddler:相当好用的Web前端调节和测试工具,当然是针对底层http协议的,一般景观选用Chrome等自带的调剂工具也丰硕了,特殊意况还得用它去处理
  • wireshark:著名的网络数据包分析工具
  • PowerCmd:替代Windows Cmd的利器
  • RegexBuddy:强大的正则表明式测试工具
  • Soure Insight:源代码阅读神器
  • SublimeText:程序员最爱的编辑器
  • Database.NET:1个通用的关系型数据库客户端,基于.NET
    4.0支付的,做简单的处理照旧蛮方便的
  • Navicat Premium:支持MySql、PostgreSQL、Oracle、Sqlite和SQL
    Server的客户端,通用性上不如Database.NET,但质量方面比Database.NET好过多,自带备份成效也用于数据库定时备份。
  • Synergy : 局域网内一套键盘鼠标控制多台微型总结机
  • DameWare:远程帮衬理工科程师具集(作者在专营商重点决定大显示器用)
  • Radmin: 远程序控制制工具,用了一段时间的
  • DameWare,还要破解,对Win7补助的不好,依旧察觉这些好用
  • Listary:能大幅幅度拉长你 Windows
    文件浏览与寻找速度功用的「一级神器」
  • Clover:给能源管理器加上多标签
  • WinLaunch:模拟Mac OS的Launch工具
  • Fritzing:绘制电路图
  • LICEcap:gif教程制作git,
  • svn:版本控制系统Enigma Virtual
    Box(将exe,dll等封装成叁个可执行程序)
  • Open DBDiff(针对SqlServer)数据库同步
  • SymmetricDS:数据库同步
  • BIEE,Infomatica,SPSS,weka,景逸SUV语言:数据解析
  • CodeSmith,LightSwitch:代码生成
  • Pandoc:马克down转换工具,出书用的。在此以前玩过docbook,可是以往照旧马克down盛行啊。
  • Window
    Magnet[Mac]:增强Mac窗口管理职能,想Win7一样拥有窗口拖放到荧屏边缘自动调整的效果
  • log explorer:查看SqlServer日志dependency
  • walker:查询Windows应用程序dll正视项
  • Shairport4w:将魅族,苹果平板,iPod上的节拍通过AirPlay协和式飞机传输到PC上
  • ngrok:内网穿透工具Axure:快捷原型制作工具,还有个在线作图的工具国内的一个创业团队做的,用着很正确http://www.processon.com
  • tinyproxy:(Linux)小型的代理服务器辅助http和https协议EaseUS
    Partition
  • Master:超级不难的分区调整工具,速度依旧蛮快的,C盘不够用了就用它从D盘划点空间啊,不用重装系统这么折腾哦。
  • CheatEngine:玩游戏修改内部存款和储蓄器值必备神器(记得小编在玩轩辕剑6的时候就用的它,一级福利呢)
  • ApkIDE:Android反编译神器翻、墙工具(自|由|门、天行浏览器)

设计工具:Sketch、OmniOxettele

MindManger:思维导图

1.装置七个canvas 的例外的 z-index 来安装其左右 形成遮罩层的法力
后边的3个canvas 完成绘图功用 前面一个canvas完成解决刮奖涂层的效能当然也得以用3个canvas 在您别清除了时候边绘制(那样会过分占用能源而且自小编觉得实现麻烦没有采纳) 
2.3个div用来展示图片可能文字 canvas设置z-index做蒙版在地方然后完结刮得效能。

中间有借鉴为博友的文章:http://www.cnblogs.com/puyongsong/p/6027533.html

<!DOCTYPE html>
<html>
<head>
    <meta id="viewport" name="viewport" content="width=640,user-scalable=no,minimal-ui" />  <!--禁止用户缩放-->
</head>
<body>

    <div style="width:640px;margin:auto;">
        <!--刮刮乐-->
        <div id="lottery" style="width:300px;height:500px;margin:10px;background-color:lightskyblue;border-radius:5px;float:left;">
            <div style="width:300px;height:100px;line-height:100px;text-align:center;font-size:33px;color:blueviolet;">即兴彩票</div>
            <div id="txt" style="width:300px;height:200px;font-size:40px;color:peachpuff;display:flex;justify-content:center;align-items:center;flex-direction:column; position:relative;">
               <!--这里其实是为另一个做的准备 但是代码就不上了 -->
                @*<div style=" width: 300px;height: 200px;  position:absolute;">
                    <div style=" width: 300px;height: 200px; z-index: 1; ">
                        <div id="div_one" style="height: 100px; width: 100px; float: left;  background-color: #0480BE;"></div>
                        <div id="div_two" style="height: 100px; width: 100px; float: left; background-color:#004444"></div>
                        <div id="div_three" style="height: 100px; width: 100px; float: right; background-color: #005580; "></div>
                        <div id="div_four" style="height: 100px; width: 100px; float: left; clear: both; background-color: #149BDF;"></div>
                        <div id="div_five" style="height: 100px; width: 100px; float: left;  background-color: #008800;"></div>
                        <div id="div_six" style="height: 100px; width: 100px; float: left;  background-color: #149BDF;"></div>
                    </div>
                </div>
                <canvas id="canvas2" width="300px" height="200px" style="top:0;left:0;z-index:2; position: relative;">
                    sorry 您的浏览器不支持canvas该组件
                </canvas>
            </div>*@
            <div id="canvasArea" style="width:300px;height:200px;position:relative;">
                <div style="width:300px;height:200px;position:absolute;top:0;left:0;z-index:1;text-align:center;line-height:200px;font-weight:bold;font-size:30px;color:indianred;">
                    <div id="div_img">
                        <img id="winpic" src="~/GIF/0.jpg" style="border-radius:50px">
                    </div>                   
                </div>
                <canvas id="canvas" width="300px" height="200px" style="position:absolute;top:0;left:0;z-index:2;"> 

 sorry 您的浏览器不支持canvas该组件

</canvas>

            </div>
        </div>
    </div>
    <div id="bg_div" style=" color:red ">
        <!--display:none;-->
        <div id="show">
            <label id="winResult">缺那么点运气</label>
        </div>
    </div>
    <script src="~/Scripts/ISWin.js"></script>   
</body>
</html>

接着便是页面包车型大巴js  由于是在Cshtml 中写的  所以会js在最终 假诺您是做成手提式有线电话机 你本来会放在页尾 成分先加载  动画效果怎么着的后行 

//页面加载完成之后就加载canvas的上下文
 //添加触摸事件和触摸滑动事件
 window.onload = function () {
        var canvas = document.getElementById("canvas");
        context = canvas.getContext("2d");//这里没有给var 是让其成为全局变量都可以访问 
        canvas.addEventListener('touchstart', touch, false);
        canvas.addEventListener('touchend', touchend, false);
        draw();
    }
    //更改图片 在页面加载的时候就先把图片加载出来
    function changepic() {
        Scratch.ProducingPic("/Potiker/Frist", 'winpic', 'div_img');
    }

 function ISwin() {
        ShowDiv(bg_div);       
    }
    function ShowDiv(show_div) {
         //这里是写死的 纯属故意   
        var img = document.getElementById('winpic'), result = '12.jpg';
        var name = img.src.substring(img.src.lastIndexOf('/') + 1).toString();
        if (name === result) {
            $("#winResult").text("哇偶你中奖了");
        } else {
            $("#winResult").text("遗憾了 !没中奖了");
        }       
        setTimeout(function () { ClearCanvas() }, 800);
        setTimeout(function () {  CloseDiv(bg_div) }, 1200);
        $("#bg_div").css("display", "block");
    };
    //关闭层  其实也可以用css来控制  
    function CloseDiv(bg_div) {      
        $("#bg_div").hide();
        draw();

    };

您会问 为何平素不请求的经过  小编咋知道本身的图样要体现怎么 

百川归海 未来网上段子都说了  一段脚本会引发血案  笔者也许把它写成多少个文件
然后加密 混淆什么的 毕竟那样 仍然加了一些难度了

//----------------------------③
(function () {
    // 事件绑定
    window.bindHandler = (function () {
        if (window.addEventListener) {// 标准浏览器
            return function (elem, type, handler) {
                // elem:节点    type:事件类型   handler:事件处理函数
                // 最后一个参数为true:在捕获阶段调用事件处理程序;为false:在冒泡阶段调用事件处理程序。注意:ie没有这个参数
                elem.addEventListener(type, handler, false);
            }
        } else if (window.attachEvent) {// IE浏览器
            return function (elem, type, handler) {
                elem.attachEvent("on" + type, handler);
            }
        }

    }());
    // 事件解除
    window.removeHandler = (function () {
        if (window.removeEventListener) {// 标准浏览器
            return function (elem, type, handler) {
                elem.removeEventListener(type, handler, false);
            }
        } else if (window.detachEvent) {// IE浏览器
            return function (elem, type, handler) {
                elem.detachEvent("on" + type, handler);
            }
        }
    }());
    //添加清除事件及动作 (获取canvas 动作)


}());
//刮奖
var brush1 = function (event) {
    // ----------------------------②  
    var x = event.touches[0].clientX - canvas.getBoundingClientRect().left;
    var y = event.touches[0].clientY - canvas.getBoundingClientRect().top;
    // ----------------------------
    context.clearRect(x, y, 20, 20);
    //console.log(x, y);
};
/// 鼠标按下时 - 绑定鼠标跟随事件
function touch() {
    bindHandler(canvas, 'touchmove', brush1, false);
    changepic();
}
// 停止刮奖功能 - 解绑鼠标跟随事件
function touchend() {
    removeHandler(canvas, "mousemove", brush1, false);
    ISwin();
}


//更改图片 在页面加载的时候就先把图片加载出来
function changepic() {
    Scratch.Frist("/Potiker/Frist");
}

//测试绘制圆形遮罩
function draw() {
    context.fillStyle = '#A9AB9D';
    context.beginPath();
    context.arc(150, 102, 50, 0, Math.PI * 2, true);
    context.closePath();
    context.fill();
}
//  改进意见: 逐步清除
function ClearCanvas() {
    context.clearRect(100, 50, 5 * 22, 5 * 22);
}

//这里是引入一个手机文件里面封装了一个XHRHttpResquset ① 
new_element = document.createElement("script");
new_element.setAttribute("type", "text/javascript");
new_element.setAttribute("src", "../Scripts/inc.js");
document.body.appendChild(new_element);





var Scratch =
    {   //请求客户信息
        Frist: function (url) {
            Ajax({

                method: 'get',
                type: 'json',
                url: url,
                callback: function (data) {

                }
            })
        },
        //用户点击绘制后 请求新的图片路径并赋值 
        //如果错误则调用 创建一张谢谢参与的图片
        ProducingPic: function (url, picid, piclocation) {
            var path;
            Ajax({
                method: 'get',
                type: 'json',
                url: url,
                callback: function (data) {
                    console.log(data);
                    if (data[1].static == "ok") {
                        path = data[0].img;
                    } else {
                        path = '';//请重新登录的图片
                    }
                    document.getElementById('' + picid).remove();
                    var imglocation = document.getElementById('' + piclocation);

                    var img = document.createElement('img');
                    //设置 img 属性,如 id
                    img.setAttribute("id", "" + picid);
                    img.style.borderRadius = "50px";
                    //设置 img 图片地址
                    img.src = "../GIF/" + path;
                    imglocation.appendChild(img);
                }
            })

        },
        //生成刮奖结果
        Result: function (url) {
            Ajax({
                method: 'GET',
                type: 'json',
                url: this.url,
                callback: function (data) {
                      //弹出中奖金额
                }
            })


        }

    }

解释 解释: 
③ :首先将其卷入之后您能够四个地点调用 这么些显明 然后优先执行
你也是领略 
② : 那是3个计量 你的入手到的canvas的坐标地方 
① :那里是引入另3个文书中的有个别方法 
①=》很多时候大家会在挥洒js文件的时候去引入另三个文本中的方法 
三种缓解方案 : 一:把要引用的公文一直copy过来
写到那一个文件个中去(吃亏不讨好 手提式有线电话机里当然是越小越好咯)。 
二: 在js文件中动态引入 添加3个script的js标签。 
注意事项: 由于是script标签 最好是在页面包车型大巴body中引入。

好了 来说个手游的 套路  : 那正是你见到的结果许多时候都以服务端 生成的
你想去更改 抓包什么的  然后客服 索求币  

人家数据库一查 没有这条数据   而且一个游玩一局中的每便请求都以有唯一的ID
 很多时候还会添加上下文判断  从客户端入手的事务仍然少想 

玩耍  玩玩就好  别太投入。

沾满效果图

图片 1图片 2

发表评论

电子邮件地址不会被公开。 必填项已用*标注