最新亚洲AV网址_国产精品vr无码专区_美国精品一区二区三区四区五_亚洲无码国产精品_换妻社区国产精品,完美世界有声小说,完结小说排行榜,有声小说打包下载

微信掃碼登錄 ×
簡(jiǎn)易的移動(dòng)端計(jì)算器代碼

簡(jiǎn)易的移動(dòng)端計(jì)算器代碼

收藏
簡(jiǎn)易的移動(dòng)端計(jì)算器代碼
jQuery簡(jiǎn)易灰色的手機(jī)網(wǎng)頁(yè)計(jì)算器,采用逆波蘭表達(dá)式計(jì)算器代碼。

使用方法:

1、head引入css文件

<style>
* {
	margin: 0;
	padding: 0;
	-webkit-tap-highlight-color: transparent;
}

html, body {
	height: 100%;
	overflow: hidden;
}

.kiner-calc-container {
	width: 100%;
	margin: 0 auto;
	border-left: 1px solid #e6e6e6;
	border-top: 1px solid #e6e6e6;
	overflow: hidden;
	box-sizing: border-box;
	display: flex;
	flex-flow: column;
	height: 100%;
	zoom: 1;
	max-width: 750px;
}

.result-panel {
	flex: 1;
	background: #f0f0f0;
	box-sizing: border-box;
	border: 5px #f2f3f7 solid;
	text-align: right;
	font-size: 56px;
	color: #999;
	box-shadow: inset 0 0 5px #aaa;
	position: relative;
	overflow: hidden;
}

.result-panel .data {
	display: inline-block;
	transform-origin: right center;
	transition: all 300ms;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%) scale(1);
	padding-right: 10px;
	word-break: keep-all;
	height: fit-content;
}

.calc-container {
	width: 100%;
	display: flex;
	flex-flow: column;
	flex: 5;
}

.calc-container .row {
	display: flex;
	flex: 1;
	border-top: 1px solid #e6e6e6;
	justify-content: center;
	box-sizing: border-box;
}

.row .key {
	flex: 1;
	text-align: center;
	border-right: 1px solid #e6e6e6;
	background: radial-gradient(#dddddd, #f2f3f7);
	cursor: pointer;
	font-size: 32px;
	color: #333333;
	user-select: none;
	box-sizing: border-box;
	transition: 100ms;
}

.row .key:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}

.row .key span {
	display: inline-block;
	vertical-align: middle;
}

.row .key.active {
	transform: scale(.9);
	box-shadow: 0 0 5px #333;
}

.row .special {
	background: radial-gradient(orangered, #cf3800);
	color: #FFFFFF;
}
</style>

2、body引入HTML代碼

<div class="kiner-calc-container">
    <div class="result-panel">
        <span class="data"></span>
    </div>
    <div class="calc-container">
        <div class="row">
            <div class="key" data-key="("><span>(</span></div>
            <div class="key" data-key=")"><span>)</span></div>
            <div class="key" data-key="delAll"><span>CE</span></div>
            <div class="key" data-key="/"><span>÷</span></div>
        </div>
        <div class="row">
            <div class="key" data-key="7"><span>7</span></div>
            <div class="key" data-key="8"><span>8</span></div>
            <div class="key" data-key="9"><span>9</span></div>
            <div class="key" data-key="*"><span>×</span></div>
        </div>
        <div class="row">
            <div class="key" data-key="4"><span>4</span></div>
            <div class="key" data-key="5"><span>5</span></div>
            <div class="key" data-key="6"><span>6</span></div>
            <div class="key" data-key="-"><span>-</span></div>
        </div>
        <div class="row">
            <div class="key" data-key="1"><span>1</span></div>
            <div class="key" data-key="2"><span>2</span></div>
            <div class="key" data-key="3"><span>3</span></div>
            <div class="key" data-key="+"><span>+</span></div>
        </div>
        <div class="row">
            <div class="key" data-key="."><span>.</span></div>
            <div class="key" data-key="0"><span>0</span></div>
            <div class="key" data-key="del"><span>del</span></div>
            <div class="key special" data-key="eq"><span>=</span></div>
        </div>
    </div>
</div>


<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/kiner-calc.js"></script>
<script type="text/javascript">

  // 完美解決 ios10 及以上 Safari 無(wú)法禁止縮放的問(wèn)題
  window.onload = function () {
    // 阻止雙擊放大
    var lastTouchEnd = 0;
    document.addEventListener('touchstart', function (event) {
      if (event.touches.length > 1) {
        event.preventDefault();
      }
    });
    document.addEventListener('touchend', function (event) {
      var now = (new Date()).getTime();
      if (now - lastTouchEnd <= 300) {
        event.preventDefault();
      }
      lastTouchEnd = now;
    }, false);

    // 阻止雙指放大
    document.addEventListener('gesturestart', function (event) {
      event.preventDefault();
    });
  }


  var kinerCalc = new KinerCalc();
  var resultPanel = $('.result-panel .data');

  function calcFontSize(panelWidth, dataWidth) {
    var rate = 1;
    if (panelWidth < dataWidth) {
      rate = panelWidth / (dataWidth + 40);

      console.log(rate);

      return rate;
    } else {
      return rate;
    }

  }

  var isMobile = "ontouchend" in document ? true : false;

  $('.calc-container').on(isMobile?'touchend':'click', '.key', function () {

    var key = $(this).data('key');
    var val = resultPanel.text();
    $(this).addClass('active');
    var _this = this;
    setTimeout(function () {
      $(_this).removeClass('active');
    }, 100);

    if (["+", "-", "*", "/"].indexOf(key) >= 0 && ["+", "-", "*", "/"].indexOf(val[val.length - 1]) >= 0) {
      return false;
    }

    if (key === "eq") {
      var txt = resultPanel.text();
      if (txt.length === 0) {
        return false;
      }
      var res = kinerCalc.calc(txt);
      resultPanel.text(res);
    } else if (key === "del") {

      resultPanel.text(val.substring(0, val.length - 1));
    } else if (key === "delAll") {
      resultPanel.text('');
    } else if (key === "(") {
      if (["(", ")"].indexOf(val[val.length - 1]) >= 0) {
        return false;
      }
      resultPanel.append(key);
    } else if (key === ")") {
      if (["(", ")"].indexOf(val[val.length - 1]) >= 0) {
        return false;
      }
      resultPanel.append(key)
    } else {
      resultPanel.append(key);
    }

    resultPanel.css({
      transform: 'translateY(-50%) scale(' + calcFontSize($('.result-panel').width(), resultPanel.width()) + ')'
    });

  });


</script>

使用聲明

1. 本站所有素材(未指定商用),僅限學(xué)習(xí)交流。
2. 會(huì)員在本站下載的原創(chuàng)商用和VIP素材后,只擁有使用權(quán),著作權(quán)歸原作者及17素材網(wǎng)所有。
3. 原創(chuàng)商用和VIP素材,未經(jīng)合法授權(quán),請(qǐng)勿用于商業(yè)用途,會(huì)員不得以任何形式發(fā)布、傳播、復(fù)制、轉(zhuǎn)售該素材,否則一律封號(hào)處理。
4. 本平臺(tái)織夢(mèng)模板僅展示和個(gè)人非盈利用途,織夢(mèng)系統(tǒng)商業(yè)用途請(qǐng)預(yù)先授權(quán)。

x
×
×

注冊(cè)

QQ注冊(cè) 立即下載 微信注冊(cè) 立即下載

簽到成功!

已連續(xù)簽到1天,連續(xù)簽到3天可獲得50積分

知道了
主站蜘蛛池模板: 广水市| 武安市| 南京市| 怀化市| 潞西市| 清丰县| 梨树县| 离岛区| 巨野县| 儋州市| 犍为县| 基隆市| 化隆| 文登市| 叙永县| 皮山县| 云安县| 南安市| 永州市| 丰城市| 友谊县| 岢岚县| 舟曲县| 安图县| 连山| 宣威市| 信阳市| 达拉特旗| 瓮安县| 崇仁县| 白沙| 嘉善县| 临夏市| 贺兰县| 林西县| 新兴县| 鞍山市| 若羌县| 乳山市| 栾川县| 海口市|