1、最近在用h5的canvas画动画,发现图像特别模糊。后来终于找到罪魁祸首是<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />这个代码,因为这行代码进行了伸缩

2、模糊图像的效果:

3、将压缩去掉后的效果

可以将代码改成

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="user-scalable=no" />
<title>赛事详细页</title>
<script src="js/rem.js" type="text/javascript" charset="utf-8"></script>
<link rel="stylesheet" type="text/css" href="css/m_reset.css" />
<link rel="stylesheet" type="text/css" href="css/gameListsNew.css" />
<link href="css/mask.css" rel="stylesheet" />
</head>
<body>
<div class="tipMask">
<div class="tipBox">
<img src="img/faileTip.png" class="tipsImg" />
<div class="fileBtn">
<img src="img/fileBtn.png" />
<span class="tryAgain">再试一次</span>
</div>
</div>
</div>
<div>
<img src="img/whiteBack.png" class="titleImg" /> <div class="bgEvent" id="contentbody">
<div id="eventDetail" v-cloak>
<!--标题-->
<div class="detailevent">
<div class="titlevs">
<img class="teamFlagLogo" onerror="nofind(this);" :src="'img/teamlogonew/'+eventDetail.HomeTeamID+'.png'" />
<div class="countryName">
{{eventDetail.HomeTeamName}}
</div>
</div>
<div class="titlevs" style="padding-top:0.3rem ;">
<div>
<!--未开赛-->
<!--<p class="theWorldCup">世界杯</p>-->
<p class="theGameNowDataTime">{{eventDetail.TimeFormat }}</p>
<p class="gameBeginTime">{{getScoreOrVs(eventDetail.HomeTeamScore,eventDetail.AwayTeamScore)}}</p>
</div>
<!--开赛时长-->
<!--<div>
<p>:</p>
</div>-->
</div>
<div class="titlevs">
<img class="teamFlagLogo" onerror="nofind(this);"
:src="'img/teamlogonew/'+eventDetail.AwayTeamID+'.png'" />
<div class="countryName">
{{eventDetail.AwayTeamName}}
</div>
</div>
</div> <div id="ordersuccess" class="ordersuccess">
<div style="text-align:right;padding-top:0.2rem;padding-left:0.2rem;">
<img src="img/ordersuccess/close.png" style="width:0.45rem;height:0.45rem;" id="closesuccess" onclick="closesuccess();" />
</div>
<div class="teamname">
<div class="teamnameitem"><p class="teamnameitemtop">{{eventDetail.HomeTeamName}}</p><br /><p class="teamnameitembottom">HOME</p></div>
<div class="teamnameitem "><p class="teamnameitemmiddle">VS</p></div>
<div class="teamnameitem"><p class="teamnameitemtop">{{eventDetail.AwayTeamName}}</p><br /><p class="teamnameitembottom">AWAY</p></div>
</div>
<div class="teamdetail">
<div class="teamdate"><span>{{eventDetail.CompetitionName}}</span><span>/</span><span>{{eventDetail.DateFormat}}</span></div>
<div class="teamplaysselection">
<table style="width:100%;text-align:left;height:100%;">
<tr>
<td class="teamplaysselectiontop" style="width:50%;">玩法</td>
<td class="teamplaysselectiontop" style="width:50%;">选项</td>
</tr>
<tr>
<td class="teamplaysselectionbottom" style="width:50%;" id="rulename">Match Odds</td>
<td class="teamplaysselectionbottom" style="width:50%;" id="selectionname">Home</td>
</tr>
</table>
</div>
<div class="teamwinmoney">
<table style="width:90%;text-align:left;height:100%;">
<tr>
<td class="teamwinmoneytop" style="width:50%;">
本金
</td>
<td class="teamwinmoneytop" style="width:50%;">
赔率
</td>
<td class="teamwinmoneytop" style="width:50%;">
预赢
</td>
</tr>
<tr>
<td class="teamwinmoneybottom" style="width:50%;" id="betmoneysuc"></td>
<td class="teamwinmoneybottom" style="width:50%;" id="betodds">12.54</td>
<td class="teamwinmoneybottom" style="width:50%;" id="betwin"></td>
</tr>
</table>
</div>
</div>
</div> </div> <div>
<div class="square" id="square">
<canvas id="courtCaseNew" width="" height=""></canvas>
</div>
<img src="img/balllittle.png" style="width:20px;height:20px;display:none;" id="imgballNew" />
</div> <div class="middlechat"> <div class="middleitem" id="jcc">
<p class="tabActive">竞猜场</p>
</div> <div class="middleitem" id="jcjl">
<p class="tabCommon">竞猜记录</p>
</div> <div class="middleitem" id="sssj">
<p class="tabCommon">赛事事件</p>
</div>
<div class="middleitem" id="jstj">
<p class="tabCommon">技术统计</p>
</div>
</div>
<div class="downChangrTab quizGames" style="display: block;">
<div id="ruleTypeItems" v-cloak>
<!--胜平负-->
<div class="diffPlaysTetx" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==100">
<span class="speciesName">赛果</span>
<span class="rotary" v-if="item.State!=1">(已封盘)</span>
<span class="speciesExp">猜90分钟(含补时)两队的比赛结果</span>
</div>
<div v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==100" id="result" name="selectionItems" class="result">
<div v-bind:class="[(select.BackOdds<1.01 || item.State!=1) ? 'resutitemGray commonBorderGray':'resutitem commonBorder']" v-for="(select,index) in item.Selection"
v-on:click="select.BackOdds>=1.01 &&clickFun($event,item.State,select.BackOdds,item.MarketId,select.SelectionId,'赛果',select.SelectionName);" name="itemSelection">
<p class="winEquLose" v-bind:name="'item'+item.MarketId">{{select.SelectionName}}</p>
<p class="winEquLoseOdds " v-bind:name="'item'+item.MarketId">
<span v-bind:id="item.MarketId+select.SelectionId" v-bind:maxlimit="select.MaxStakeLimit">{{select.BackOdds}}</span>
<img src="img/upIng.png" style="width:0.2rem;display:none;" v-bind:id="'redOne'+item.MarketId+select.SelectionId" />
<img src="img/downIng.png" style="width:0.2rem;display:none;" v-bind:id="'greenOne'+item.MarketId+select.SelectionId" />
</p>
</div>
</div> <!--单双-->
<div class="diffPlaysTetx" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==130">
<span class="speciesName">单双</span>
<span class="rotary" v-if="item.State!=1">(已封盘)</span>
<span class="speciesExp">猜90分钟(含补时)比赛总进球的单双</span>
</div>
<div id="oddeven" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==130" name="selectionItems" class="oddeven">
<div v-bind:class="[(select.BackOdds<1.01 || item.State!=1) ? 'oddevenitemGray commonBorderGray':'oddevenitem commonBorder']" v-for="(select,index) in item.Selection" v-on:click="select.BackOdds>=1.01 &&clickFun($event,item.State,select.BackOdds,item.MarketId,select.SelectionId,'单双',select.SelectionName)" name="itemSelection">
<p class="winEquLose" v-bind:name="'item'+item.MarketId" v-bind:id="'selectionname'+item.MarketId+select.SelectionId">{{select.SelectionName}}</p>
<p class="winEquLoseOdds" v-bind:name="'item'+item.MarketId">
<span v-bind:id="item.MarketId+select.SelectionId" v-bind:maxlimit="select.MaxStakeLimit">{{select.BackOdds}}</span>
<img src="img/upIng.png" style="width:0.2rem;display:none;" v-bind:id="'redOne'+item.MarketId+select.SelectionId" />
<img src="img/downIng.png" style="width:0.2rem;display:none;" v-bind:id="'greenOne'+item.MarketId+select.SelectionId" />
</p>
</div>
</div> <!--总进球-->
<div class="diffPlaysTetx" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==410">
<span class="speciesName">总进球 </span>
<span class="rotary" v-if="item.State!=1">(已封盘)</span>
<span class="speciesExp">猜90分钟(含补时)比赛总进球的数 </span>
</div>
<div id="totalGoals" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==410" name="selectionItems" class="totalGoals"> <div v-bind:class="[(select.BackOdds<1.01 || item.State!=1) ? 'totalGoalitemGray commonBorderGray':'totalGoalitem commonBorder']" v-for="(select,index) in item.Selection" v-on:click="select.BackOdds>=1.01 &&clickFun($event,item.State,select.BackOdds,item.MarketId,select.SelectionId,'总进球',select.SelectionName)" name="itemSelection">
<p class="winEquLose" v-bind:name="'item'+item.MarketId" v-bind:id="'selectionname'+item.MarketId+select.SelectionId">{{select.SelectionName}}</p>
<p class="winEquLoseOdds" v-bind:name="'item'+item.MarketId">
<span v-bind:id="item.MarketId+select.SelectionId" v-bind:maxlimit="select.MaxStakeLimit">{{select.BackOdds}}</span>
<img src="img/upIng.png" style="width:0.2rem;display:none;" v-bind:id="'redOne'+item.MarketId+select.SelectionId" />
<img src="img/downIng.png" style="width:0.2rem;display:none;" v-bind:id="'greenOne'+item.MarketId+select.SelectionId" />
</p>
</div>
</div> <!--全场比分-->
<div class="diffPlaysTetx" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==140">
<span class="speciesName">全场比分</span>
<span class="rotary" v-if="item.State!=1">(已封盘)</span>
<span class="speciesExp">猜90分钟(含补时)全场比分</span>
</div>
<div id="correctScoreHome" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==140" name="selectionItems" class="correctScoreHomeAway"> <div v-bind:class="[(select.BackOdds<1.01 || item.State!=1) ? 'correctScoreitemGray commonBorderGray':'correctScoreitem commonBorder']" v-for="(select,index) in item.Selection" v-on:click="select.BackOdds>=1.01 &&clickFun($event,item.State,select.BackOdds,item.MarketId,select.SelectionId,'全场比分',select.SelectionName)" name="itemSelection">
<p class="winEquLose" v-bind:name="'item'+item.MarketId" v-bind:id="'selectionname'+item.MarketId+select.SelectionId">{{select.SelectionName}}</p>
<p class="winEquLoseOdds" v-bind:name="'item'+item.MarketId">
<span v-bind:id="item.MarketId+select.SelectionId" v-bind:maxlimit="select.MaxStakeLimit">{{select.BackOdds}}</span>
<img src="img/upIng.png" style="width:0.2rem;display:none;" v-bind:id="'redOne'+item.MarketId+select.SelectionId" />
<img src="img/downIng.png" style="width:0.2rem;display:none;" v-bind:id="'greenOne'+item.MarketId+select.SelectionId" />
</p>
</div> </div>
<div class="downImg" onclick="clickImg()">
<img src="img/toDown.png" />
</div>
<!--下一进球-->
<div class="diffPlaysTetx" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==350">
<span class="speciesName">下一进球</span>
<span class="rotary" v-if="item.State!=1">(已封盘)</span>
<span class="speciesExp">猜90分钟(含补时)下一进球的球队</span>
</div>
<div id="nextgoal" v-for="(item,index) in eventDetail.Market" v-if="item.RuleType==350" name="selectionItems" class="result"> <div v-bind:class="[(select.BackOdds<1.01 || item.State!=1) ? 'resutitemGray commonBorderGray':'resutitem commonBorder']" v-for="(select,index) in item.Selection" v-on:click="select.BackOdds>=1.01 &&clickFun($event,item.State,select.BackOdds,item.MarketId,select.SelectionId,'下一进球',select.SelectionName)" name="itemSelection">
<p class="winEquLose" v-bind:name="'item'+item.MarketId" v-bind:id="'selectionname'+item.MarketId+select.SelectionId">{{select.SelectionName}}</p>
<p class="winEquLoseOdds" v-bind:name="'item'+item.MarketId">
<span v-bind:id="item.MarketId+select.SelectionId" v-bind:maxlimit="select.MaxStakeLimit">{{select.BackOdds}}</span>
<img src="img/upIng.png" style="width:0.2rem;display:none;" v-bind:id="'redOne'+item.MarketId+select.SelectionId" />
<img src="img/downIng.png" style="width:0.2rem;display:none;" v-bind:id="'greenOne'+item.MarketId+select.SelectionId" />
</p>
</div>
<div class="" style="width: 100%;height:0.45rem;"></div>
</div>
<div class="perchDiv" style="width: 100%;height:3rem;"></div>
</div>
</div>
<!--竞猜记录-->
<div class="downChangrTab guessRecord">
<div class="hide-body" id="dialogorders">
<div class="tableNameGuess">
<li>玩法</li>
<li>选项</li>
<li>赔率</li>
<li>本金</li>
<li>结果</li>
</div>
<ul style="background:#FFFFFF;height:4.79rem;overflow: scroll;">
<div class="guessedLists" id="contentOrders" v-for="(item,index) in orders">
<li>
{{item.MarketName}}
</li>
<li>
{{item.SelectionName}}
</li>
<li>
{{item.FillPrice}}
</li>
<li>
{{item.FillAmount}}
</li>
<li>
<p v-if="item.Status == '0'"> 待确认</p>
<p v-else-if="item.Status == '1'">订单正常</p>
<p v-else-if="item.Status == '2'">{{item.NetReturn}}</p>
<p v-else-if="item.Status == '3'">订单已被取消</p>
<p v-else-if="item.Status == '4'">订单无效</p>
<p v-else="item.Status == '5'">订单被拒绝,投注延迟期间发生重要事件等原因</p>
</li>
</div>
</ul>
</div>
</div>
<!--赛事事件-->
<div class="downChangrTab" style="display: none;" v-if="">
<div class="login-body" id="contentCases">
<table class="whatHappen" v-if="cases.length >0">
<tr>
<td></td>
<td class="happenedMiddle">
<div class="happenedMiddle_top" style="margin-top: 0.4rem;"></div>
</td>
<td></td>
</tr>
</table>
<table class="whatHappen" style="" v-for="(item,index) in cases" border="" cellspacing="" cellpadding="">
<tr>
<td></td>
<td class="happenedMiddle">
<div class="happenedMiddle_line"></div>
</td>
<td></td>
</tr>
<tr v-if="item.CaseDescription.indexOf('主')>-1">
<td class="eventsHappendLeft_things">
<div class="eventsText">
<p class="eventsTextLeft_time">{{item.CaseMinutes}}'</p>
<p class="eventsTextLeft_Country">{{item.CaseDescription}}</p>
</div>
</td>
<td class="happenedMiddle">
<div class="eventsHappend_img">
<img :src="GetMatchEventImg(item.CaseDescription)" />
</div>
</td>
<td></td>
</tr>
<tr v-if="item.CaseDescription.indexOf('客')>-1">
<td></td>
<td class="happenedMiddle">
<div class="eventsHappend_img">
<img :src="GetMatchEventImg(item.CaseDescription)" />
</div>
</td>
<td class="eventsHappendRight_things">
<div class="eventsText">
<p class="eventsTextRight_Country">{{item.CaseDescription}}</p>
<p class="eventsTextRight_time">{{item.CaseMinutes}}'</p>
</div>
</td>
</tr>
<tr v-if="item.CaseDescription.indexOf('主')<0 && item.CaseDescription.indexOf('主')<0">
<td></td>
<td>
<a class="ti tlefoc">{{item.CaseMinutes}}'</a>
<a class="titlefoc">{{item.DesChina}}</a>
</td>
<td></td>
</tr>
</table>
<table class="whatHappen" v-if="cases.length >0">
<tr>
<td></td>
<td class="happenedMiddle">
<div class="happenedMiddle_line"></div>
<div class="happenedMiddle_top"></div>
</td>
<td></td>
</tr>
</table>
<!--<div style="width: 100%; height: 2.7rem;"></div>-->
</div> </div>
<!--技术统计-->
<div class="downChangrTab" style="display: none;">
<div class="skillInfoGaryBg" id="stutsskillsData"> <div class="skillInfo" v-for="(item, index) in skillsData">
<li class="shotsOnTargets">
<div class="shotsOnTargets_left">
<p class="skillsTextFonts">{{item.AwayTeamValue}}</p>
<div class="sotl_bg">
<div class="sotl_bgProgress"></div>
</div>
</div> <div class="shotsOnTargets_middle"> <img :src="GetMatchStatsImage(item.StatsType)" />
<p class="shills_name">{{item.StatsType}}</p>
</div> <div class="shotsOnTargets_right">
<p class="skillsTextFonts">{{item.HomeTeamValue}}</p>
<div class="sotl_bg">
<div class="sotl_bgProgress"></div>
</div>
</div>
</li> </div>
</div>
</div> </div>
<!--底部下单-->
<div class="buttomOrder">
<!--金额输入-->
<!--竞猜金额-->
<div class="aboutMoney">
<input type="text" name="" id="betmoney" class="gussMoney" value="竞猜金额" placeholder="" readonly="readonly" v-model="gussMoney" />
<img src="img/clearBetMoney.png" class="clearGussMoney" id="clearGussMoney" />
<!--余额-->
<span class="balanceMoney" id="minemoney">我的余额:</span>
<!--下注金额-->
<div class="diffGussMoney" style="text-align:center;">
<ul>
<li name="bettingmoney" class="difGuMonCom" val="">+</li>
<li name="bettingmoney" class="difGuMonCom" val="">+</li>
<li name="bettingmoney" class="difGuMonCom" val="">+</li>
<li class="difGuMonCom" id="allin" style="line-height: 0.5rem;">
<p style="height: 0.3rem;">All <span style="margin-left: 0.05rem;">in</span></p>
<p id="allinvalue" style="height: 0.3rem;"></p>
</li>
</ul>
</div>
<!--确定-->
<p class="subSure subSureRed" style="text-align:center;" onclick="CreateOrder();" id="subSure">
确定
</p>
</div>
</div>
<!--下单成功后遮罩层--> <div id="overlay" class="overlay"></div>
</div>
<div>
<img src="img/goal/goalball.png" />
<img src="img/goal/goal.png" />
<img src="img/goal/fireworks.png" />
</div>
<script src="js/jquery-1.10.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/vue.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/common.js?ver=012902" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery.cookie.min.js"></script>
<script src="js/mask.js?ver=012901"></script>
<script type="text/javascript" src="js/eventDetailsNew.js?ver=012908"></script>
<script src="../js/animation.js"></script> </body> </html>

最新文章

  1. 【JAVA并发编程实战】7、日志服务
  2. 如何拿到国内IT巨头的Offer
  3. static、final、static final 用法
  4. 使用gson进行json转换
  5. hdu5032 Always Cook Mushroom
  6. Linux软件大全
  7. Python 随即生成DAG(有向无环图)
  8. 有些arp请求报文中为什么会有目的mac地址(不使用广播地址)
  9. 纯真IP数据库格式详解
  10. Excel 若某列包含某个字符则特定列显示特定字符
  11. 使用Openresty加快网页速度
  12. vim 去除代码行号并正常缩进代码
  13. Mac 下安装 MySQL 经历
  14. Apache POI 示例
  15. Python3基础-高级用法
  16. Oracle:新增用户登录提示“ORA-04098:触发器‘GD.ON_LOGON_TRIGGER’无效且未通过重新验证”
  17. XXXXX
  18. 匹配img标签的正则表达式
  19. java微信开发之接受消息回复图片或者文本
  20. linux性能系列--cpu

热门文章

  1. Quartz 代码调用Demo
  2. asp.net core 多端口监听&amp;日志服务
  3. sublime 设置新建文件自动添加author(作者)等文件头信息
  4. bzoj:1575: [Usaco2009 Jan]气象牛Baric
  5. Bellman-Ford 求含负权最短路
  6. Sql Server——约束
  7. Python 之 基础知识(三)
  8. 一对多(多对一)关系中的inverse和cascade属性
  9. Oracle_单行函数
  10. 分布式文件系统FastDFS动态扩容