⑴ highlight.js
一行代碼就能讓我的網站支持代碼高亮的工具庫,也支持在 Vue 中使用,強烈推薦給大家。
highlight.js 是一款使用 javascript 開發代碼高亮工具庫,能夠讓網頁上的代碼顯示接近我們使用的代碼編輯器的高亮樣式,從而看起來更舒服,增強閱讀體驗。
常來我網站的小夥伴都知道,我的文章有一個欄目是「前端」,主要推薦一下實用的前端開源項目或者組件庫,寫技術類文章免不了要貼代碼,我的網站基於 wordpress 搭建,此前我一直為找一款代碼高亮插件煩惱,但大部分 wordpress 的代碼高亮插件實在太臃腫,出來的樣式又不美觀。大多時候是截圖 VsCode 的代碼界面,甚至還用過 codepng 這個工具把代碼變成圖片貼在文章中,但這樣做是美觀了,但也存在2個問題:
最終還是找到了 highlight.js,完美解決了上面兩個問題,而且配置簡單,演示漂亮,定製化簡單。不禁感嘆:用純前端的方式解決,才能精準控制,實現想要的效果。
下面以我的網站為例,展示將 highlight.js 用在我們的項目上的方法。首先 highlight.js 支持 cdn 直接引入和 npm 安裝,我的網站基於 wordpress 開發,主題是自己寫的,最簡單的方式就是在文章詳情頁引入 highlight.js 和主題樣式。
雖然 highlight.js 支持幾百種開發語言,但為了將文件體積控制到最小,我們可以點擊「get version」按鈕進入下載頁,通過勾選我們需要的開發語言,來構建最輕量的庫。
下載解壓後得到的 highlight.min.js 就是我們需要引入的 js 文件,主題樣式都在 style 文件夾里,我選擇了一個比較喜歡的 monokai-sublime 主題,只需要一個 css 文件,然後初始化:
就是這么簡單,highlight.js 會自動將文章中的
點擊查看本次分享的網址以及代碼高亮效果
highlight.js - 讓網頁上的代碼高亮美化的免費開源工具庫 那些免費的磚
⑵ js欄目高亮
比如說新聞中心高亮:添加個class active
.active{ background-color:red;}
<div class="ny_left_dh_wxz active" id="div1"><a href="[!--news.url--]news">新聞中心</a></div>
或者回添加個答onclick = 'activeMenu(this)'
function activeMenu(_this){
$('.ny_left_dh_wxz').each(function(){
$(this).removeClass('active');
});
$(_this).addClass('active');
}
⑶ JS當前菜單高亮顯示,怎麼弄啊
寫了,你看看,覺得可以歡迎採納
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=UTF-8">
<title>Document</title>
<style>
.navigation
{
width:200px;
height:30px;
background:#ccc;
border:1pxsolid#ccc;
padding:0;
margin:50px;
}
.navigationul
{
width:200px;
height:30px;
margin:0;
padding:0;
list-style-type:none;
}
.navigationulli
{
width:80px;
height:30px;
margin:0;
padding:0;
float:left;
text-align:center;
line-height:30px;
}
.navigationullia
{
text-decoration:none;
margin:0;
}
.navigationulli.active
{
background:#f90;
}
</style>
<script>
window.onload=function()
{
varaLi=document.getElementsByTagName('li');
for(vari=0;i<aLi.length;i++)
{
//滑鼠移入設置class為active
aLi[i].onmouseover=function()
{
this.className='active';
}
//滑鼠移出去掉class
aLi[i].onmouseout=function()
{
this.className='';
}
}
}
</script>
</head>
<body>
<divclass="navigation">
<ul>
<li>
<ahref="/">首頁</a>
</li>
<li>
<ahref="/jianshenfangfa/">健身方法</a>
</li>
</ul>
</div>
</body>
</html>
⑷ 請教用JS實現導航欄高亮,滑鼠經過時和當前
<scripttype="text/javascript"src="http://www.daixiaorui.com/Public/js/jquery.min.js"></script>
<style>
.menu{padding:0;margin:0;list-style-type:none;}
.menuli{background:#FFD1A4;margin-right:1px;float:left;color:#fff;}
.menulia{display:block;width:80px;text-align:center;height:32px;line-height:32px;color:#fff;font-size:13px;text-decoration:none;}
.cur{background:#D96C00;font-weight:bold;}
</style>
<ulclass="menu"id="menu">
<li><ahref="demo1.html?aa=1">首頁</a></li>
<li><ahref="demo1.html?aa=2">欄目一</a></li>
<li><ahref="demo1.html?aa=3">欄目二</a></li>
</ul>
<scripttype="text/javascript">
varurlstr=location.href;
//alert(urlstr);
varurlstatus=false;
$("#menua").each(function(){
if((urlstr+'/').indexOf($(this).attr('href'))>-1&&$(this).attr('href')!=''){
$(this).addClass('cur');urlstatus=true;
}else{
$(this).removeClass('cur');
}
});
if(!urlstatus){$("#menua").eq(0).addClass('cur');}
</script>
⑸ JS裡面怎樣設置高亮
var oldKey="";function showKey(allStr,keyStr){ if(oldKey!=""){ allStr.replace("<font color='#ff0000'>"+oldKey+"</font>",oldKey); } if(keyStr!=""){ allStr.replace(keyStr,"<font color='#ff0000'>"+keyStr+"</font>"); } oldKey = keyStr;}
⑹ 用js高亮當前欄目導航
//html 代碼襲
//調用 css
<link rel="stylesheet" type="text/css" href="css.css" />
<a href="#" class="menu2" onMouseOver="this.className='menu1'" onMouseOut="this.className='menu2'">網路</a>
<a href="#" class="menu2" onMouseOver="this.className='menu1'" onMouseOut="this.className='menu2'">谷歌</a>
////////////////////////////
css.css代碼:
.menu1
{
width:120px;
height:auto;
font-weight:bold
}
.menu2
{
width:120px;
height:18px;
}
⑺ js表格高亮顯示.hover
這是表格高亮顯示功能。
hover一個模仿懸停事件。滑鼠移動到一個對象上面及移出這個對象。的方法。這是一個自定義的方法,它為頻繁使用的任務提供了一種保持在其中的狀態。當滑鼠移動到一個匹配的元素上面時,會觸發指定的第一個函數。當滑鼠移出這個元素時,會觸發指定的第二個函數。而且,會伴隨著對滑鼠是否仍然處在特定元素中的檢測,如果是,則會繼續保持懸停狀態,而不觸發移出事件。
第一種各行換色,第二種滑鼠移動到對應行,高亮顯示。
⑻ 如何實現所在頁面導航高亮顯示
導航高亮顯示當前頁:
一、先定義侍兄一個CSS,比如:
<style>
.changebg{background-color:#FFCC00;}
</style>
二、給導航所在的區域設置ID,這個區域我不知道你是怎麼做的,比如div,td或li等,但都要設置ID,比如分別為:sy,gsjj,gsxw
三、每個頁都有頁名,這個一般已經設置好了。比如老此襲:首頁、公司簡介、公司新聞。
四、每個頁上添加js代碼
<div id="head">
<ul>
<li id="sy" class="li1"><a href="indexl" target="_blank">首頁</a></li>
<li id="gsjj" class="li1"><a href="gsjjl" target="_blank">公司簡介</a></li>
<li id="gsxw" class="li1"><a href="gsxwl" target="_blank">公司新聞</a></li>
</ul>
</div>
<script>
links="sy|gsjj|gsxw"
pagename="首頁|公司簡介|公司新聞"
links_in=links.split("扒輪|")
pagename_in=pagename.split("|")
for(i=0;i<pagename_in.length;i++){
if(pagename_in[i]==document.title){
document.getElementByIdx_x(links_in[i]).className="changebg";
break;
}
}
</script>
⑼ jQuery JS 如何高亮頁面上的所有數字
這個高亮,實質上是把12變成<span style="backgroud: yellow">12</span>。
那麼只要做一個替換就可以了。但是需要考慮兩點:
需要被替換的內容,必須是標簽里的內容,不能是屬性。比如,不能把<div width="100%" color="#12fe45">這里的100,12,45都不應該被替換。
需要被替換的內容,不能是<script>標簽里的內容(理所當然的吧)。比如<script>var a=123; xxx</script> 這里的123不應該被替換。
所以,考慮到以上,最終的做法必須是遍歷所有的標簽,然後如果標簽里沒有標簽的時候,才把標簽里的文字作替換。
(functionhilightNumber(jqObj){
//不能替換script標簽里的數字
vardomObj=jqObj[0];
if(domObj.nodeName=="SCRIPT"){
return;
}
//如果標簽里有標簽,我們也不作替換,而是遞歸進去遍歷內層的標簽。
varchildren=jqObj.children();
if(children.length>0){
for(vari=0;i<children.length;i++){
hilightNumber($(children[i]));
}
}else{
//標簽里只有文字,沒有內層標簽的時候,才做替換,
//把123替換成帶顏色的標簽內包含123,就實現了高亮。
varhilightedHtml=jqObj.html().replace(/([+-]?[0-9]+(.[0-9]+)?)/g,"<spanstyle='background:yellow;'>$1</span>");
jqObj.html(hilightedHtml);
}
})($("body"));
注意!這個不能解決全部的問題,但大部分情況應該可以用了。
不能解決的例子:
<p>我是詭異的段落2333,但是我裡面竟然還有子標簽!<b>這里是加黑的字666</b>。<span>這里是其它顏色12345的哈哈</span></p>
如果是上面這樣的HTML,2333可能不會被加亮。。。畢竟p里還有內層標簽b和span。。。
⑽ js分頁高亮問題
<scripttype="text/javascript">
/**
*由於你的代碼很多,而我只更改了JavaScript部分,所以我只發JS部分了。
*
*另外,我改動的地方都做了注釋,具體詳見:
*/
varobj=document.getElementById("frameContent");//獲取內容層
varpages=document.getElementById("pages");//獲取翻頁層
window.onload=function()//重寫窗體載入的事件
{
varallpages=Math.ceil(parseInt(obj.scrollHeight)/parseInt(obj.offsetHeight));//獲取頁面數量
pages.innerHTML="<b>共"+allpages+"頁</b>";//輸出頁面數量
for(vari=1;i<=allpages;i++){
//這里對初始分頁做了判斷,如果是第一次循環,則將第一頁高亮,因為是JS分頁程序也決定了網頁開啟後為第一頁:
pages.innerHTML+="<ahref="javascript:showPage('"+i+"');"style="color:"+(i==1?"#F00":"#06C")+"">第"+i+"頁</a>";
//循環輸出第幾頁
}
}
functionshowPage(pageINdex)
{
obj.scrollTop=(pageINdex-1)*parseInt(obj.offsetHeight);//根據高度,輸出指定的頁
//下面我做了點擊事件的判斷,點擊了哪個,哪個高亮,其餘的變回原色:
varas=pages.getElementsByTagName('a');
for(vari=0;i<as.length;i++){
as[i].style.color=i+1==pageINdex?'#F00':'#06C';
}
}
</script>