简单的文件内容繁简体甄别

2023-11-20

在做国际化的时候, 很多旧文件中的简体或者繁体 需要优化, 一个一个找很麻烦, 于是在查阅资料后, 自己编写了一个简单的工具

废话不多说, 上码子!

--

插件: mui-ui , vue.js , jquery

項目是 hbuildx 直接創建的

 

 

change_lang.js

/**
 * 繁簡體對照表  字體是一一對應的
 */
var zh_s =
	'皑蔼碍爱翱袄奥坝罢摆败颁办绊帮绑镑谤剥饱宝报鲍辈贝钡狈备惫绷笔毕毙闭边编贬变辩辫鳖瘪濒滨宾摈饼拨钵铂驳卜补参蚕残惭惨灿苍舱仓沧厕侧册测层诧搀掺蝉馋谗缠铲产阐颤场尝长偿肠厂畅钞车彻尘陈衬撑称惩诚骋痴迟驰耻齿炽冲虫宠畴踌筹绸丑橱厨锄雏础储触处传疮闯创锤纯绰辞词赐聪葱囱从丛凑窜错达带贷担单郸掸胆惮诞弹当挡党荡档捣岛祷导盗灯邓敌涤递缔点垫电淀钓调迭谍叠钉顶锭订东动栋冻斗犊独读赌镀锻断缎兑队对吨顿钝夺鹅额讹恶饿儿尔饵贰发罚阀珐矾钒烦范贩饭访纺飞废费纷坟奋愤粪丰枫锋风疯冯缝讽凤肤辐抚辅赋复负讣妇缚该钙盖干赶秆赣冈刚钢纲岗皋镐搁鸽阁铬个给龚宫巩贡钩沟构购够蛊顾剐关观馆惯贯广规硅归龟闺轨诡柜贵刽辊滚锅国过骇韩汉阂鹤贺横轰鸿红后壶护沪户哗华画划话怀坏欢环还缓换唤痪焕涣黄谎挥辉毁贿秽会烩汇讳诲绘荤浑伙获货祸击机积饥讥鸡绩缉极辑级挤几蓟剂济计记际继纪夹荚颊贾钾价驾歼监坚笺间艰缄茧检碱硷拣捡简俭减荐槛鉴践贱见键舰剑饯渐溅涧浆蒋桨奖讲酱胶浇骄娇搅铰矫侥脚饺缴绞轿较秸阶节茎惊经颈静镜径痉竞净纠厩旧驹举据锯惧剧鹃绢杰洁结诫届紧锦仅谨进晋烬尽劲荆觉决诀绝钧军骏开凯颗壳课垦恳抠库裤夸块侩宽矿旷况亏岿窥馈溃扩阔蜡腊莱来赖蓝栏拦篮阑兰澜谰揽览懒缆烂滥捞劳涝乐镭垒类泪篱离里鲤礼丽厉励砾历沥隶俩联莲连镰怜涟帘敛脸链恋炼练粮凉两辆谅疗辽镣猎临邻鳞凛赁龄铃凌灵岭领馏刘龙聋咙笼垄拢陇楼娄搂篓芦卢颅庐炉掳卤虏鲁赂禄录陆驴吕铝侣屡缕虑滤绿峦挛孪滦乱抡轮伦仑沦纶论萝罗逻锣箩骡骆络妈玛码蚂马骂吗买麦卖迈脉瞒馒蛮满谩猫锚铆贸么霉没镁门闷们锰梦谜弥觅绵缅庙灭悯闽鸣铭谬谋亩钠纳难挠脑恼闹馁腻撵捻酿鸟聂啮镊镍柠狞宁拧泞钮纽脓浓农疟诺欧鸥殴呕沤盘庞国爱赔喷鹏骗飘频贫苹凭评泼颇扑铺朴谱脐齐骑岂启气弃讫牵扦钎铅迁签谦钱钳潜浅谴堑枪呛墙蔷强抢锹桥乔侨翘窍窃钦亲轻氢倾顷请庆琼穷趋区躯驱龋颧权劝却鹊让饶扰绕热韧认纫荣绒软锐闰润洒萨鳃赛伞丧骚扫涩杀纱筛晒闪陕赡缮伤赏烧绍赊摄慑设绅审婶肾渗声绳胜圣师狮湿诗尸时蚀实识驶势释饰视试寿兽枢输书赎属术树竖数帅双谁税顺说硕烁丝饲耸怂颂讼诵擞苏诉肃虽绥岁孙损笋缩琐锁獭挞抬摊贪瘫滩坛谭谈叹汤烫涛绦腾誊锑题体屉条贴铁厅听烃铜统头图涂团颓蜕脱鸵驮驼椭洼袜弯湾顽万网韦违围为潍维苇伟伪纬谓卫温闻纹稳问瓮挝蜗涡窝呜钨乌诬无芜吴坞雾务误锡牺袭习铣戏细虾辖峡侠狭厦锨鲜纤咸贤衔闲显险现献县馅羡宪线厢镶乡详响项萧销晓啸蝎协挟携胁谐写泻谢锌衅兴汹锈绣虚嘘须许绪续轩悬选癣绚学勋询寻驯训讯逊压鸦鸭哑亚讶阉烟盐严颜阎艳厌砚彦谚验鸯杨扬疡阳痒养样瑶摇尧遥窑谣药爷页业叶医铱颐遗仪彝蚁艺亿忆义诣议谊译异绎荫阴银饮樱婴鹰应缨莹萤营荧蝇颖哟拥佣痈踊咏涌优忧邮铀犹游诱舆鱼渔娱与屿语吁御狱誉预驭鸳渊辕园员圆缘远愿约跃钥岳粤悦阅云郧匀陨运蕴酝晕韵杂灾载攒暂赞赃脏凿枣灶责择则泽贼赠扎札轧铡闸诈斋债毡盏斩辗崭栈战绽张涨帐账胀赵蛰辙锗这贞针侦诊镇阵挣睁狰帧郑证织职执纸挚掷帜质钟终种肿众诌轴皱昼骤猪诸诛烛瞩嘱贮铸筑驻专砖转赚桩庄装妆壮状锥赘坠缀谆浊兹资渍踪综总纵邹诅组钻致钟么为只凶准启板里雳余链泄';
var zh_t =
	'皚藹礙愛翺襖奧壩罷擺敗頒辦絆幫綁鎊謗剝飽寶報鮑輩貝鋇狽備憊繃筆畢斃閉邊編貶變辯辮鼈癟瀕濱賓擯餅撥缽鉑駁蔔補參蠶殘慚慘燦蒼艙倉滄廁側冊測層詫攙摻蟬饞讒纏鏟産闡顫場嘗長償腸廠暢鈔車徹塵陳襯撐稱懲誠騁癡遲馳恥齒熾沖蟲寵疇躊籌綢醜櫥廚鋤雛礎儲觸處傳瘡闖創錘純綽辭詞賜聰蔥囪從叢湊竄錯達帶貸擔單鄲撣膽憚誕彈當擋黨蕩檔搗島禱導盜燈鄧敵滌遞締點墊電澱釣調叠諜疊釘頂錠訂東動棟凍鬥犢獨讀賭鍍鍛斷緞兌隊對噸頓鈍奪鵝額訛惡餓兒爾餌貳發罰閥琺礬釩煩範販飯訪紡飛廢費紛墳奮憤糞豐楓鋒風瘋馮縫諷鳳膚輻撫輔賦複負訃婦縛該鈣蓋幹趕稈贛岡剛鋼綱崗臯鎬擱鴿閣鉻個給龔宮鞏貢鈎溝構購夠蠱顧剮關觀館慣貫廣規矽歸龜閨軌詭櫃貴劊輥滾鍋國過駭韓漢閡鶴賀橫轟鴻紅後壺護滬戶嘩華畫劃話懷壞歡環還緩換喚瘓煥渙黃謊揮輝毀賄穢會燴彙諱誨繪葷渾夥獲貨禍擊機積饑譏雞績緝極輯級擠幾薊劑濟計記際繼紀夾莢頰賈鉀價駕殲監堅箋間艱緘繭檢堿鹼揀撿簡儉減薦檻鑒踐賤見鍵艦劍餞漸濺澗漿蔣槳獎講醬膠澆驕嬌攪鉸矯僥腳餃繳絞轎較稭階節莖驚經頸靜鏡徑痙競淨糾廄舊駒舉據鋸懼劇鵑絹傑潔結誡屆緊錦僅謹進晉燼盡勁荊覺決訣絕鈞軍駿開凱顆殼課墾懇摳庫褲誇塊儈寬礦曠況虧巋窺饋潰擴闊蠟臘萊來賴藍欄攔籃闌蘭瀾讕攬覽懶纜爛濫撈勞澇樂鐳壘類淚籬離裏鯉禮麗厲勵礫曆瀝隸倆聯蓮連鐮憐漣簾斂臉鏈戀煉練糧涼兩輛諒療遼鐐獵臨鄰鱗凜賃齡鈴淩靈嶺領餾劉龍聾嚨籠壟攏隴樓婁摟簍蘆盧顱廬爐擄鹵虜魯賂祿錄陸驢呂鋁侶屢縷慮濾綠巒攣孿灤亂掄輪倫侖淪綸論蘿羅邏鑼籮騾駱絡媽瑪碼螞馬罵嗎買麥賣邁脈瞞饅蠻滿謾貓錨鉚貿麽黴沒鎂門悶們錳夢謎彌覓綿緬廟滅憫閩鳴銘謬謀畝鈉納難撓腦惱鬧餒膩攆撚釀鳥聶齧鑷鎳檸獰甯擰濘鈕紐膿濃農瘧諾歐鷗毆嘔漚盤龐國愛賠噴鵬騙飄頻貧蘋憑評潑頗撲鋪樸譜臍齊騎豈啓氣棄訖牽扡釺鉛遷簽謙錢鉗潛淺譴塹槍嗆牆薔強搶鍬橋喬僑翹竅竊欽親輕氫傾頃請慶瓊窮趨區軀驅齲顴權勸卻鵲讓饒擾繞熱韌認紉榮絨軟銳閏潤灑薩鰓賽傘喪騷掃澀殺紗篩曬閃陝贍繕傷賞燒紹賒攝懾設紳審嬸腎滲聲繩勝聖師獅濕詩屍時蝕實識駛勢釋飾視試壽獸樞輸書贖屬術樹豎數帥雙誰稅順說碩爍絲飼聳慫頌訟誦擻蘇訴肅雖綏歲孫損筍縮瑣鎖獺撻擡攤貪癱灘壇譚談歎湯燙濤縧騰謄銻題體屜條貼鐵廳聽烴銅統頭圖塗團頹蛻脫鴕馱駝橢窪襪彎灣頑萬網韋違圍爲濰維葦偉僞緯謂衛溫聞紋穩問甕撾蝸渦窩嗚鎢烏誣無蕪吳塢霧務誤錫犧襲習銑戲細蝦轄峽俠狹廈鍁鮮纖鹹賢銜閑顯險現獻縣餡羨憲線廂鑲鄉詳響項蕭銷曉嘯蠍協挾攜脅諧寫瀉謝鋅釁興洶鏽繡虛噓須許緒續軒懸選癬絢學勳詢尋馴訓訊遜壓鴉鴨啞亞訝閹煙鹽嚴顔閻豔厭硯彥諺驗鴦楊揚瘍陽癢養樣瑤搖堯遙窯謠藥爺頁業葉醫銥頤遺儀彜蟻藝億憶義詣議誼譯異繹蔭陰銀飲櫻嬰鷹應纓瑩螢營熒蠅穎喲擁傭癰踴詠湧優憂郵鈾猶遊誘輿魚漁娛與嶼語籲禦獄譽預馭鴛淵轅園員圓緣遠願約躍鑰嶽粵悅閱雲鄖勻隕運蘊醞暈韻雜災載攢暫贊贓髒鑿棗竈責擇則澤賊贈紮劄軋鍘閘詐齋債氈盞斬輾嶄棧戰綻張漲帳賬脹趙蟄轍鍺這貞針偵診鎮陣掙睜猙幀鄭證織職執紙摯擲幟質鍾終種腫衆謅軸皺晝驟豬諸誅燭矚囑貯鑄築駐專磚轉賺樁莊裝妝壯狀錐贅墜綴諄濁茲資漬蹤綜總縱鄒詛組鑽緻鐘麼為隻兇準啟闆裡靂餘鍊洩';

/**
 * 簡體轉繁體
 * @param {Object} a 一句中文
 */
function lang_s_t(a) {
	var text = '';
	for (let i in a) {
		var t = a[i];
		var idex = zh_s.indexOf(t)
		if (idex > -1) {
			text += zh_t[idex]
		} else {
			text += t;
		}
	}
	return text;
}

/**
 * 繁體轉簡體
 * @param {Object} a 一句中文
 */
function lang_t_s(a) {
	var text = '';
	for (let i in a) {
		var t = a[i];
		var idex = zh_t.indexOf(t)
		if (idex > -1) {
			text += zh_s[idex]
		} else {
			text += t;
		}
	}
	return text;
}

 

 

zh.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<title>文件繁簡體查詢</title>
		<script src="js/mui.min.js"></script>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		<script src="js/jquery-2.1.1.js"></script>
		<script src="js/change_lang.js" type="text/javascript" charset="utf-8"></script>
		<script src="js/clipboard.min.js"></script>
		<link href="css/mui.min.css" rel="stylesheet" />
		<script type="text/javascript" charset="utf-8">
			mui.init();
		</script>
	</head>
	<style>
		*{
			font-size: 14px;
		}
		
		html,body,#app_vue{
			height: 100%;
			background-color: #FFF;
		}
		
		#app_vue{
			display: flex;
			flex-direction: row;
		}
		
		.box{
			display: flex;
			flex-direction: column;
			width: 400px;
			height: 100%;
			background-color: #CCCCCC;
			padding: 10px;
		}
		
		.textbody{
			width: calc(100% - 380px);
			height: calc(100% - 20px);
			margin: 10px;
			border: 1px solid #ACACB4;
			padding: 10px;
			overflow-x: hidden;
			overflow-y: auto;
		}
		.isgo{
			background-color: burlywood;
			padding: 5px 15px;
			border-radius: 8px;
			color: #FFF;
			/* width: 300px; */
			height: 100%;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 50%;
		}
		
		.tree{
			height: calc(100% - 120px);
			width: 100%;
			overflow-x: hidden;
			overflow-y: auto;
			border: 1px solid #929292;
		}
		
		.s_table{
			width:100%;
		}
		
		.s_table th{
			margin: 5px 0;
		}
		.th{
			padding: 5px;
		}
		
		.text_center{
			text-align: center;
		}
		
		.s_line{
			width: 50px;
		}
		.display{
			display: none;
		}
		
		.bg_active{
			background-color: #ffaa7f;
		}
		
		.g_12{
			height: 30px;
			display: flex;
			margin:15px 0;
		}
		
		.g_12_1{
			padding: 5px 15px;
			border-radius: 8px;
			color: #333;
			/* width: 300px; */
			height: 100%;
			display: flex;
			align-items: center;
			justify-content: center;
			width: 50%;
			background-color: #FFF;
		}
		
	</style>
	<body>
		<div id="app_vue">

			<div class="box">
				<p>請先選擇文件:文件數量不要太大,影響效率</p>
				<input type="file" name="fileName" id="file_input" v-on:change="textChange" webkitdirectory directory />
				<div class="mui-input-row">
					<input type="text" id="otherFile" class="mui-input-clear" placeholder="輸入文件名, .xx,.xx">
				</div>
				<div class="g_12">
					<div v-on:click="textChange" class="isgo">
						查詢所有
					</div>
					<div class="g_12_1">
						<div class="mui-input-row mui-checkbox ">
							<label>只看繁體</label>
							<input name="Checkbox" type="checkbox" v-on:change="isZHF">
						</div>

					</div>
				</div>
				<div class="tree">
					<!-- treeData -->
					<ul class="mui-table-view">
						<li v-for="(item,index) in textcontent" v-on:click="selectOne" v-bind:class="selectIndex == index ? 'bg_active' : ''"
						 v-bind:data-index="index" v-bind:style="'color:'+item.color" class="mui-table-view-cell" v-if="item.show && item.path"
						 v-show="!isZH ||  (isZH && item.color == 'red')">
							{{item.path}}
						</li>
					</ul>
				</div>
			</div>
			<div class="textbody">
				<h4>行數會有上下浮動, 請以實際為準</h4>
				<button class="btn display">Copy</button>
				<!-- 單列 -->
				<div v-if="selectIndex != -1">
					<p v-on:click="copy" v-bind:data-text="textcontent[selectIndex].path">
						文件名稱/地址:{{textcontent[selectIndex].path}} (點擊文字自動複製)
					</p>

					<table class="s_table" border="1" cellspacing="" cellpadding="">
						<tr>
							<th class="s_line">行數</th>
							<th class="s_th">簡體</th>
							<th class="s_th">繁體(點擊文字自動複製)</th>
						</tr>
						<tr v-for="(it,index_) in textcontent[selectIndex].text">
							<td class="text_center">{{it.line}}</td>
							<td class="th" v-on:click="copy" v-bind:data-text="it.text">{{it.text}}</td>
							<td class="th" v-on:click="copy" v-bind:data-text="it.chText" v-bind:style="'color:'+it.color">{{it.chText}}</td>
						</tr>
					</table>
				</div>
				<!-- 所有 -->
				<div v-else id="textcontent" v-for="(item,index) in textcontent" v-show="!isZH ||  (isZH && item.color == 'red')">
					<div v-if="item.text.length > 0">
						<p v-on:click="copy" v-bind:data-text="item.path">文件名稱/地址:{{item.path}} (點擊文字自動複製)</p>
						<table class="s_table" border="1" cellspacing="" cellpadding="">
							<tr>
								<th class="s_line">行數</th>
								<th class="s_th">簡體</th>
								<th class="s_th">繁體(點擊文字自動複製)</th>
							</tr>
							<tr v-for="(it,index_) in item.text">
								<td class="text_center">{{it.line}}</td>
								<td class="th" v-on:click="copy" v-bind:data-text="it.text">{{it.text}}</td>
								<td class="th" v-on:click="copy" v-bind:data-text="it.chText" v-bind:style="'color:'+it.color">{{it.chText}}</td>
							</tr>
						</table>
						<br />
						<br />
					</div>
				</div>
			</div>


		</div>
		<script>
			var vm = new Vue({
				el: '#app_vue',
				data: {
					textcontent: [],
					selectIndex: -1,
					isZH: false,
					fileFin: ['.png', '.jpg', '.jpeg', '.css', '.gif']
				},
				created() {
					//初始化加載方法
				},
				methods: {
					// 整理樹形集合
					textChange: function() {
						var self = this;
						var files = $('input[name="fileName"]').prop('files')
						self.textcontent = [];
						var otherFile = $('#otherFile').val();
						var fileFin = this.fileFin;
						for (let i in files) {
							var file = files[i];
							var fileName = self.isnull(file.name).toLowerCase()
							var json = {}
							json.index = i;
							json.name = files[i].name;
							json.path = files[i].webkitRelativePath;
							json.text = [];
							json.color = "";
							json.show = true;
							self.textcontent.push(json)
							if (this.fileIn(fileName, fileFin, otherFile)) {
								self.textcontent[i].show = false;
								console.log('文件不存在或者是圖片, 不處理');
							} else {
								var reader = new FileReader();
								//新建一个FileReader 
								reader.readAsText(files[i], "UTF-8"); //读取文件 
								reader.onload = function(evt) { //读取完文件之后会回来这里 
									var fileString = evt.target.result; // 拿到文件內容
									var aa = fileString.split(/\n/g);
									for (let x in aa) {
										// 排除 前端日誌  如果 日誌換行了, 就不不在此列
										var bb = aa[x].replace(/console.(log)?(err)?\(.*\)(;)?/g, '');
										// 排除 後台  // 備註
										bb = bb.replace(/\/\/.*/g, '')
										// 排除所有非中文
										bb = bb.replace(/[^\u4e00-\u9fa5]+/g, '')
										if (bb != undefined && bb != null && bb != '') {
											var tj = {};
											tj.text = bb; // 原文
											tj.line = x; // 行數
											var cbb = lang_s_t(bb); // 繁體對照
											tj.chText = cbb;
											if (self.textcontent[i] != undefined && self.textcontent[i].color != 'red') {
												self.textcontent[i].color = '#000'
											}
											tj.color = '#000'
											if (bb != cbb) {
												self.textcontent[i].color = 'red'
												tj.color = 'red'
											}

											self.textcontent[i].text.push(tj);
										}

									}
								}
							}
						}


					},
					fileIn(fileName, fileFin, fileF) {
						if(fileName == ""){
							return true;
						}
						if (fileF != "") {
							var a = fileF.split(',');
							fileFin = fileFin.concat(a);
						}
						var f = false;
						for (var i = 0; i < fileFin.length; i++) {
							if (fileName.indexOf(fileFin[i]) > -1) {
								f = true;
								break;
							}
						}
						return f;
					},
					isnull: function(e) {
						if (e == undefined || e == null || e == "") {
							return '';
						}
						return e;
					},
					selectOne: function(e) {
						console.log(e);
						var self = this;
						var dataset = e.target.dataset;
						var index = dataset.index;
						self.selectIndex = index;
					},
					copy: function(e) {
						var dataset = e.target.dataset;
						console.log(e);
						$('.btn').attr('data-clipboard-text', dataset.text);
						$('.btn').click();
					},
					isZHF() {
						console.log(123);
						this.isZH = !this.isZH
					}
				}
			})

			var clipboard = new Clipboard('.btn');

			clipboard.on('success', function(e) {
				mui.toast('( ゚▽゚)/&nbsp;&nbsp;&nbsp;&nbsp;复制成功~~')
			});

			clipboard.on('error', function(e) {
				mui.toast('╭(╯^╰)╮ &nbsp;&nbsp;&nbsp;&nbsp; 诶呀,复制失误了~~')
			});
		</script>
	</body>
</html>

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单的文件内容繁简体甄别 的相关文章

  • 在 NextJS 上运行开发服务器(在网络上)

    在使用 ReactJS 时 当我们使用命令 npm start 时 它会在 localhost 3000 以及网络 192 168 1 2 3000 上启动开发服务器 这非常简单 我可以通过进入该地址在所有设备上测试我的应用程序 最近我开始
  • OpenLayers:放大或缩小后,被破坏的特征会重新出现

    我有一个 OpenLayers Bing 地图应用程序 可以显示危险废物站点 用户可以单击链接来切换地图上站点的子站点 当我通过调用层上的 destroyFeatures 来关闭子站点 它们是向量层上的点 时 它们会按预期消失 但是 如果我
  • CSS 比例和方形中心裁剪图像

    所以我的应用程序中有一个缩略图集合 其大小为200x200 有时原始图像没有这个比例 所以我计划将此图像裁剪为正方形 目前它只是拉伸图像以适合缩略图 所以说我的原始图像大小是400x800 那么图像看起来就很压扁 我想裁剪此图像 以便它查看
  • javascript - 动态变量

    您好 我正在尝试创建动态变量 但它说 变量 v0 到 v5 未定义 td each function i eval var v i this html 任何帮助将不胜感激 这听起来是个坏主意 你有什么理由不能这样做吗 var tdHtml
  • 使用javascript向url添加哈希而不滚动页面?

    在不滚动页面的情况下向 url 添加哈希 使用 JavaScript 我打开页面 我向下滚动 我单击添加哈希的链接 可能带有值 test 示例 http www example com test http www example com t
  • 使用 Jquery 更改 css 属性时的事件检测

    有没有办法检测元素的 显示 css 属性是否更改 是否更改为无 块或内联块 如果没有的话有什么插件吗 谢谢 Note 突变事件 https developer mozilla org en US docs Web Guide Events
  • 无法让 CloudKit 进行身份验证(使用 Javascript 和服务器到服务器密钥)

    我正在尝试使用苹果的cloudkit js文件以建立与 CloudKit 的服务器到服务器连接 然而 尽管配置混乱了几个小时 我似乎无法让 CloudKit 认为我的请求有效 我的配置逻辑非常简单 const privateKeyFile
  • 使用点符号将数字传递到函数中

    如果我有一个对象和函数 var obj 1234 example sample 5678 example sample function example num str if obj num hasOwnProperty str manip
  • 将 DIV 转换为单击并拖动视口

    有人知道一种不显眼的 基于原型或无框架的方法将具有大内容 例如地图 的 DIV 转换为具有固定尺寸的可点击和可拖动的 地图 容器 非常像 Google 地图 我想在大型输入表单中显示 HTML 块 这些块可能会超出可用空间 每个块可以有大约
  • 如何在javascript中删除一组表情符号中的最后一个表情符号?

    假设我的字符串中有 3 个表情符号 字符串中没有任何空格或除表情符号之外的任何其他字符 如何删除javascript中最后一个表情符号 下面的答案不使用任何特殊的包并安全地删除最后一个表情符号 function safeEmojiBacks
  • 无法安装js-bson

    我正在使用Windows 7 64位 尝试安装bson作为mongodb的依赖项 我收到此错误 npm WARN package json email protected cdn cgi l email protection No READ
  • 如何在没有 DOM 的情况下将 javascript 作为 node.js 脚本运行?

    https github com jasondavies d3 cloud https github com jasondavies d3 cloud是一个使用 D3 库的 javascript 文字云 这是一个交互式演示 http www
  • 如何使表格单元格的最小宽度为 3 位数字?

    如何使表格中的每个单元格的最小宽度为 3 位数字且不会更大 现在我正在硬编码min width 但我不喜欢硬编码一个值 因为我将来可能想更改字体 如果需要Javascript也没关系 table border 1 tr td 1 td td
  • 防止 Bootstrap IE 下拉列表在滚动条单击时关闭

    在 IE 中 单击下拉菜单滚动条时 下拉菜单将关闭 当您使用鼠标滚轮滚动它时 效果很好 这是代码层链接 https www codeply com go Uh8qadr3q2 https www codeply com go Uh8qadr
  • Angular - 将焦点放在动态创建的输入字段上

    我如何将焦点添加到新创建的字段 参见到目前为止的示例 http jsfiddle net aERwc 165 http jsfiddle net aERwc 165 scope addField function console log h
  • 如何制作实时jquery效果?

    我想制作一个实时提要阅读器 并且我想要一个解决方案 使新项目无需刷新页面即可出现 并且具有像friendfeed一样的滚动效果 你可以在这里看到我在说什么 http www vimeo com 4029954 http www vimeo
  • 响应覆盖 div 下的链接

    场景是这样的 我已经构建了一个顶部导航原型 它需要在其顶部有一个覆盖 透明 PNG 图像 目前它覆盖了大约 1 3 的链接 请看下面 有什么方法可以让前 1 3 的链接做出响应 即使有一个 div div 部分覆盖它们 覆盖层不会包含任何可
  • TinyMCE:将 CSS 类属性与 formatselect-dropdown 格式结合使用

    我想定制格式 http wiki moxiecode com index php TinyMCE Configuration theme advanced blockformats在 TinyMCE 中格式选择下拉菜单 http wiki
  • RemoveEventListener 在 Firefox 版本 58 中不起作用

    但它在 Chrome 中有效 这是我的 UI EventBus 代码 原型 addEventListener方法是一样的 只不过remove换成了add UI EventBus removeEventListener function ob
  • 有没有用 Javascript 编写的开源 JSDoc 解析器?

    我正在寻找一个可以在我的项目中使用的 JSDoc 解析器 我正在寻找可以传递 JSDoc 注释并接收该注释含义的结构化描述的东西 我见过的大多数工具似乎都能够将 JSDoc 注释转换为 HTML 或其他格式 我正在寻找能够提供可用于输入其他

随机推荐

  • Linux命令行基本用法总结【自用】

    1 awk 这条语句只能说非常牛逼 我还在傻傻的写程序处理字符文件时 被awk劝退 深度好文 http www zsythink net archives 1336 主要的用法就是 awk F分隔符默认为空格 BEGIN 代码 代码 END
  • apollo配置中心启动失败,坑的一批

    1 按照官方文档一步一步来的 启动失败 2 看启动日志发现是数据库连接的问题 3 可是我防火墙都关了 数据库设置的还是所有机器可连接 而且还是本机数据库 以为是数据库的原因 试了好多方法 甚至用了阿里云服务器中的数据库尝试 还是连接失败 有
  • python爬虫二十三:使用fiddler抓取app数据(三)

    1 什么是fiddler Fiddler是 个http协议调试代理 具 它能够记录并检查所有电脑和互联网之间的http https stp等通讯 它 持IE Chrome FireFox等等浏览器 可以在phone pad等移动设备进 连接
  • 13.前端jQuery之【入门要点】【选择器】【筛选器】

    目录 1 jQuery基本要点 2 jQuery选择器 3 jQuery筛选器 1 jQuery基本要点 1 jQuery 引入方式 write less do more 官网https jquery com 1 方式一 下载jQuery压
  • html align 属性,align-content

    align content属性 含义 设置自由盒内部各个项目在垂直方向排列方式 使用条件 必须对父元素设置自由盒属性display flex 并且设置为横向排列以及换行flex flow row wrap 这样这个属性的设置才会起作用 注意
  • 域名解析ip地址的过程

    浏览器会把输入的域名解析成对应的IP 其过程如下 1 查找浏览器缓存 因为浏览器一般会缓存DNS记录一段时间 不同浏览器的时间可能不一样 一般2 30分钟不等 浏览器去查找这些缓存 如果有缓存 直接返回IP 否则下一步 2 查找系统缓存 浏
  • C++之switch case语句详解

    我们已经了解 if else 可以用来描述一个 二岔路口 我们只能选择其中一条路来继续走 然而 有时候我们会遇到一些 多岔路口 的情况 用if else 语句来描述这种多岔路口会显得非常麻烦 而且容易把思路搅浑 比如程序4 2 2就是一个用
  • [计算机毕业设计]深度相机稀疏点云分类

    前言 大四是整个大学期间最忙碌的时光 一边要忙着准备考研 考公 考教资或者实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生级别难度的 对本科同学来说是充满挑战 为帮助大
  • ios系统脚本服务器加速,让iOS系统加速飞起来 speed intensifier插件让iOS系统加速

    由于系统的限制 在动画以及程序打开时间和速度方面基本上在iOS设备当中都是固定的 虽然默认的速度并不算太慢 基本上符合大多数用户的使用习惯 但是还是有一部分用户想方设法的想要让程序打开的速度变快一些 这里小编就带给大家一款名为 speed
  • 筛选sql中一列的重复数据及重复次数

    SELECT PROJECT CODE COUNT PROJECT CODE FROM meng project info GROUP BY PROJECT CODE HAVING COUNT PROJECT CODE gt 1 结果
  • TS复习-----TS中的类

    目录 概述 类的定义 类的继承 类的静态方法和属性 类里面的修饰符 抽象类 多态 getters与setters readonly修饰符 概述 类 Class 定义了一切事物的抽象特点 对象 Object 类的实例 面向对象 OOP 三大特
  • 使用windeployqt与inno setup实现windows下Qt程序发布打包

    一 使用windeployqt拷贝依赖文件 在发布生成的exe程序时 需要复制一大堆dll 如果自己去复制dll 很可能丢三落四 导致exe在别的电脑里无法正常运行 因此Qt官方开发环境里自带了一个工具 windeployqt exe 1
  • HR 宏

    表TRMAC 程序DBPNPMAC 转载于 https www cnblogs com CtrlS p 10818285 html
  • Tableau 中的组(group)与集(set)

    使用tableau也好长时间了 最近有同事问我tableau中组和集有什么区别 那今天就谈谈我个人对组和集的一些理解 也算是一个回顾 理解不对之处还望大牛们及时指正 1 首先看看官方的定义 组是构成更高级别类别的维度成员的组合 单独理解的确
  • Error:(923) Apostrophe not preceded by \ (in %1$s's )

    问题描述 在使用Android的strings xml时 英文版会遇到许多简写 其中 s 和 t时经常使用的 如果直接使用编译无法通过就报标题所示错误 解决方法 主要原因是 是特殊字符 需要转义 加 既可解决 示例 xx s thing 修
  • VMware 中搭建 SylixOS 环境

    1 制作 x86 平台 U 盘启动盘 详细步骤见 RealEvo IDE 使用手册 第八章 制作成功后插入 U 盘 2 创建 VMware 虚拟机设备 打开 VMware 这里使用版本为 15 5 6 点击 创建新的虚拟机 按如下步骤创建虚
  • linux 如何查看进程端口号,在linux中查看进程占用的端口号

    在Linux 上的 etc services 文件可以查看到更多关于保留端口的信息 可以使用以下六种方法查看端口信息 ss 可以用于转储套接字统计信息 netstat 可以显示打开的套接字列表 lsof 可以列出打开的文件 nmap 是网络
  • srand(time(NULL))

    srand函数是随机数发生器的初始化函数 原型 void srand unsigned seed 用法 它初始化随机种子 会提供一个种子 这个种子会对应一个随机数 如果使用相同的种子后面的rand 函数会出现一样的随机数 如 srand 1
  • 什么是页面文件使用率

    你好 很高兴能看到你的问题 也很高兴我能够回答你的问题 你提问 什么是页面文件使用率 首先我们必须要了解什么叫 页面文件 页面文件是一个存放在硬盘上的文件 大多数情况下都放在系统磁盘 如C 盘 的根目录下 这个文件不允许用户访问 只能够被操
  • 简单的文件内容繁简体甄别

    在做国际化的时候 很多旧文件中的简体或者繁体 需要优化 一个一个找很麻烦 于是在查阅资料后 自己编写了一个简单的工具 废话不多说 上码子 插件 mui ui vue js jquery 項目是 hbuildx 直接創建的 change la