Tạo menu thả xuống nhiều thư mục con



– Hôm nay mình sẽ hướng dẫn các bạn thực hiện một thủ thuật để tạo một menu ngay dạng thả xuống với nhiều cấp bậc con khác nhau. Với menu này bạn có thể tạo thêm rất nhiều thư mục trong menu, vì với một thư mục chính bạn có thể tạo thêm nhiều thư mục con khác. Menu này có sẽ làm cho blog bạn trông đẹp hơn đấy và cũng giúp bạn trong việc chia nhỏ các thư mục trong blog của bạn. Thủ thuật này cũng khá phức tạp, bạn hãy xem hình ảnh bên dưới sẽ thấy rỏ hơn.

Hình ảnh minh họa
☼ Bắt đầu thủ thuật

1. Đầu tiên đăng nhập vào blog của bạn
2. Vào bố cục chọn chỉnh sửa HTML
3. Chèn code bên dưới vào sau thẻ <head>
<style type='text/css'>
html .jqueryslidemenu{height: 1%;}
</style>

<script src='http://data-traidatmui.appspot.com/scripts/jquery.min.js' type='text/javascript'/>
<script src='http://data-traidatmui.appspot.com/scripts/drop_menu.js' type='text/javascript'/>


4. Save template lại
5. Bây giờ bạn hãy thêm 1 HTML/Javascript và dán code bên dưới vào
<style>
.jqueryslidemenu{
font: bold 12px Verdana;
background:#153E7E; /* màu nền của menu*/
width: 100%;
}

.jqueryslidemenu ul{
margin: 0;
padding: 0;
list-style-type: none;
}

.jqueryslidemenu ul li{
position: relative;
display: inline;
float: left;
}

.jqueryslidemenu ul li a{
display: block;
background:#15317E; /* màu nền của thư mục chính*/
color: white; /*màu text thư mục chính*/
padding: 8px 10px;
border-right: 1px solid #778;
text-decoration: none;
}

* html .jqueryslidemenu ul li a{
display: inline-block;
}

/*.jqueryslidemenu ul li a:link, .jqueryslidemenu ul li a:visited{
color: #ff0066; //màu cchữ các menu
}*/

.jqueryslidemenu ul li a:hover{
background:#2B60DE; /* màu hiệu ứng khi rê chuột vào các link*/
color: white; /*màu text khi rê chuột*/
}

.jqueryslidemenu ul li ul{
position: absolute;
left: 0;
display: block;
visibility: hidden;
}

.jqueryslidemenu ul li ul li{
display: list-item;
float: none;
}

.jqueryslidemenu ul li ul li ul{
top: 0;
}

.jqueryslidemenu ul li ul li a{
font: normal 13px Verdana;
width: 160px;
padding: 5px;
margin: 0;
border-top-width: 0;
border-bottom: 1px solid gray;
}

.jqueryslidemenuz ul li ul li a:hover{
background: #eff9ff;
color: black;
}

.downarrowclass{
position: absolute;
top: 12px;
right: 7px;
}

.rightarrowclass{
position: absolute;
top: 6px;
right: 5px;
}</style>

<div id="myslidemenu" class="jqueryslidemenu">
<ul>
<li><a href="#">Cuộc sống</a></li>

<li><a href="#">Học tập</a></li>

<li><a href="#">Thủ thuật</a>
<ul>
<li><a href="#">Sub Item 1.1</a></li>
<li><a href="#">Sub Item 1.2</a></li>
<li><a href="#">Sub Item 1.3</a></li>
<li><a href="#">Sub Item 1.4</a></li>
</ul></li>

<li><a href="#">Giải trí­</a></li>

<li><a href="#">Blogspot</a>
<ul>
<li><a href="#">Sub Item 2.1</a></li>
<li><a href="#">Folder 2.1</a>
<ul>
<li><a href="#">Sub Item 2.1.1</a></li>
<li><a href="#">Sub Item 2.1.2</a></li>
<li><a href="#">Folder 3.1.1</a>
<ul>
<li><a href="#">Sub Item 3.1.1.1</a></li>
<li><a href="#">Sub Item 3.1.1.2</a></li>
<li><a href="#">Sub Item 3.1.1.3</a></li>
<li><a href="#">Sub Item 3.1.1.4</a></li>
<li><a href="#">Sub Item 3.1.1.5</a></li>
</ul>
</li>
<li><a href="#">Sub Item 2.1.4</a></li>
</ul> </li> </ul></li>

<li><a href="#">Vườn thơ</a></li>

<li><a href="#">Hình ảnh</a>
<ul>
<li><a href="#">Sub Item 1.1</a></li>
<li><a href="#">Sub Item 1.2</a></li>
</ul></li>

<li><a href="#">Download</a>
<ul>
<li><a href="#">Sub Item 2.1</a></li>
<li><a href="#">Sub Item 2.2</a></li>
</ul></li>


</ul><br style="clear: left" />
</div>


Chỉnh code:
- Bạn hãy dựa vào các dòng chữ màu xanh lá ở trên để chỉnh sửa màu nền và text theo ý bạn
- Những dòng màu đỏ đậm trong code trên chính là tên của các thư mục chính, bạn hãy thay đổi cho phù hợp với blog của bạn.
- Code màu xanh dương là tên của những thư mục con cấp 1 của menu chính
- Code màu xanh nhạt là tên của thư mục con cấp 2 của thư mục chính
- Code màu cam là thư mục con cấp 3 của thư mục chính, bạn hãy sửa tên các thư mục trên cho phù hợp với blog của bạn.
- Thay các dấu "#" thành những đường dẫn tương ứng với tên của thư mục

Ở trên mình chỉ giới thiệu cho bạn tạo 7 thư mục, bạn có thể thêm nhiều hơn hoặc bớt đi tùy ý. Nhưng bạn cần phải lưu ý khi xóa đi hoặc thêm vào thư mục nào thì phải kiểm tra lại thẻ đóng của chúng cho phù hợp.

Cách tạo menu con: ví dụ bạn muốn tạo thư mục con cấp 2 cho thư mục "Download" tại thư mục Sub Item 2.2 thì bạn làm như bên dưới:
<li><a href="#">Download</a>
<ul>
<li><a href="#">Sub Item 2.1</a></li>
<li><a href="#">Sub Item 2.2</a>
<ul>
<li><a href="#">Sub Item 2.1.1</a></li>
<li><a href="#">Sub Item 2.2.2</a></li>
</ul>
</li>
</ul></li>

Bạn muốn tạo cho các thư mục khác thì làm tương tự, chú ý các thẻ <li>, <ul> đóng chúng cho phù hợp.

Nếu muốn thêm thư mục không cần có thư mục con bạn chỉ việc thêm code như bên dưới và vị trí bạn muốn. ví dụ thêm như mục "Cộng cụ" vào sau thư mục "Học tập" bạn làm như sau:
<li><a href="#">Học tập</a></li>

<li><a href="#">Công cụ</a></li>

6. Save lại
Chúc bạn thành công
[Xem tiếp...]


"Tạo menu sổ xuống với hiệu ứng trượt ngang bằng Jquery"



(Traidatmui.com) – Vô tình mình thấy được một style menu trên trang ebank.vtc.vn, menu với hiệu ứng trượt khá đẹp mắt. Và mình thấy nó có thể ứng dụng cho blogger nên hôm nay xin chia sẻ đến các bạn thủ thuật này. Thủ thuật này sử dụng Jquery làm cho phần submenu trượt khá mượt khi bạn rê chuột vào menu chính. Bạn có thể ứng dụng menu này cho blog của mình bằng cách thực hiện một vài bước bên dưới.


1. Đăng nhập vào Blogspot
2. Vào thiết kế (Design) và chọn chỉnh sửa HTML
3. Chèn code bên dưới vào sau thẻ <head>
<script type="text/javascript" src="http://data-traidatmui.appspot.com/scripts/Jquery1.3.2.js"></script>
<script type="text/javascript" src="http://data-traidatmui.appspot.com/scripts/smartmenu.js"></script>

4. Bạn chèn tiếp code sau vào trước thẻ ]]></b:skin>
.smrtmenu{
background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtJuERb9AZYEG5C9GcrPxOR_GBdvhipMi_yHJlRO3OQQnElK3TAZJQr7qJ4i_Zuj28NWee99NCOt87EIj57mxZdDSQ427wuSoEmRLjbL1kHJKfidbw-ghVsM3C0ls65AQIv_c411JRg6NQ/) repeat-x; /*nền của menu*/
height: 31px; /*chiều cao menu*/
width:600px; /*độ rộng menu*/
}

.smartmenu li ul {
display: none;
padding:0px;
}
.smartmenu ul, .smartmenufloaty ul {
margin: 0px;
padding: 0px;
list-style: none;
}
.smartmenu ul li a {
font-family:Arial;
padding: 5px 10px 5px 10px;
float: left;
font-weight:bold;
color: #FFF; /*màu text menu chính*/
background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi2-9a7Ysz6c4tChYF7e6cLabSUSI5sWM9SIAozrfOotCrnJxXFVRwTjbhS-GkrpeudBpZlOWizx8AobaNuMNcSDjdzXbJrADKDf9W68KmoodyeAbqUMvIak1hGRBX-i01vJ_YUxPhoZZqL/) no-repeat right;}

.smartmenufloaty {
position: absolute;
border: none;
width: auto;
height: auto;
left: 0px;
top: 0px;
z-index: 1000;
}

.smartmenufloaty .tip {
background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3lyNkBj1JWhsthoL_0sslrKhRuT0erjyTlRKUzcV_-Ilshjd_sgrBHMaX3BVTUHYxr8w7IREUEqsL8OcnCCKdyOTgAooIDrG5xiNb8xIMLf0f62vsMu-HXt5CQk09801ErMiKOu0TJp-b/) no-repeat;
height: 10px;
width: 50px;
margin-top: -5px;
overflow: hidden;
}

.smartmenufloaty li {
background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRiQGrT-U7WiElfYrhUs_TFZHpC3NUBGsFq0ATXXDpKmTsYIO36qQBdzBtbmV7rVOf4taJxOrkCxIKaTr_iD07B0ThSFV3XhWG-324N4EjdXtla8XyBo7ThUEnw-srdI-lkVjeDR4se2-T/);
border-bottom: 1px dotted #fff;
padding: 1px 8px 1px 8px;

}
.smartmenufloaty li.last {
border: none;
}
.smartmenufloaty a {
font-family:Arial;
font-size: 13px;
text-decoration: none;
line-height: 20px;
color:#fff; /*màu text submenu*/
}

.smartmenufloaty a:hover {
color: #0000ff; /*màu text submenu khi rê chuột*/
}

5. Bây giờ bạn save template lại và trở về phần tử trang
6. Thêm 1 HTML/Javascript và thêm vào HTML/Javascript code bên dưới
<div class="smrtmenu"><div id="navigation" class="smartmenu">
<ul>
<li><a href="URL home">Home</a></li>
<li><a href="URL menu 1">Menu 1</a>
<ul>
<li><a href="URL submenu 1.1">Submenu 1.1</a></li>
<li><a href="URL submenu 1.2">Submenu 1.2</a></li>
</ul></li>

<li><a href="URL menu 2" target="_blank">Menu 2</a>
<ul>
<li><a href="URL menu 2.1">Submenu 2.1</a> </li>
<li><a href="URL menu 2.2">Submenu 2.2</a> </li>
<li><a href="URL menu 2.3">Submenu 2.3</a> </li>
<li><a href="URL menu 2.4">Submenu 2.4</a> </li>
<li><a href="URL menu 2.5">Submenu 2.5</a> </li>
</ul></li>

<li><a href="URL menu 3" target="_blank">Menu 3</a>
<ul>
<li><a href="URL menu 3.1">Submenu 3.1</a> </li>
<li><a href="URL menu 3.2">Submenu 3.2</a> </li>
<li><a href="URL menu 3.3">Submenu 3.3</a> </li>
<li><a href="URL menu 3.4">Submenu 3.4</a> </li>
<li><a href="URL menu 3.5">Submenu 3.5</a> </li>
</ul></li>

<li><a href="URL menu 4" target="_blank">Menu 4</a>
<ul>
<li><a href="URL menu 4.1">Submenu 4.1</a> </li>
<li><a href="URL menu 4.2">Submenu 4.2</a> </li>
<li><a href="URL menu 4.3">Submenu 4.3</a> </li>
<li><a href="URL menu 4.4">Submenu 4.4</a> </li>
<li><a href="URL menu 4.5">Submenu 4.5</a> </li>
</ul></li>

<li><a href="URL menu 5" target="_blank">Menu 5</a>
<ul>
<li><a href="URL menu 5.1">Submenu 5.1</a> </li>
<li><a href="URL menu 5.2">Submenu 5.2</a> </li>
<li><a href="URL menu 5.3">Submenu 5.3</a> </li>
<li><a href="URL menu 5.4">Submenu 5.4</a> </li>
<li><a href="URL menu 5.5">Submenu 5.5</a> </li>
</ul></li>

<li><a href="URL menu 6">Menu 6</a></li>

</ul>
</div>
</div>

<script type="text/javascript">
jQuery(window).ready(function(){
jQuery("#navigation").Smartmenu({animationDuration: 250});
});
</script>

☼ Chỉnh code:
- Các dòng màu xanh đậm trong code là phần hiển thị trên menu, bạn hãy thay thành tên của các menu chính và menu con tương ứng.
- Dòng màu đỏ đậm chính là các link của các menu chính và menu con, bạn hãy thay thành link tương ứng với từng menu chính và các menu con.

7. Sau khi chỉnh sửa xong bạn save tiện ích lại

Ở trên mình chỉ có 6 menu chính nếu bạn muốn thêm nhiều menu hơn thì bạn chỉ việc thêm code như bên dưới vào sau menu 6 như bên dưới
<li><a href="URL menu 6">Menu 6</a></li>

<li><a href="URL menu 7">Menu 7</a></li>
<li><a href="URL menu 8">Menu 8</a></li>


Nếu muốn thêm menu con cho menu nào đó bạn làm như sau, ví dụ chúng ta sẽ tạo thêm menu con cho menu 6 ở trên.
<li><a href="URL menu 6" target="_blank">Menu 6</a>
<ul>
<li><a href="URL menu 6.1">Submenu 6.1</a> </li>
<li><a href="URL menu 6.2">Submenu 6.2</a> </li>

</ul></li>

Bạn muốn thêm nhiều menu con trong menu 6 trên, bạn chỉ việc thêm dòng code tương tự bên dưới vào sau submenu 6.2 ở trên.
<li><a href="URL menu 6.3">Submenu 6.3</a> </li>

Chúc bạn thành công
[Xem tiếp...]


K14 - Pro Menu (với hiệu ứng prodown)



Lấy ý tưởng từ việc thực hiện demo cho bài viết Tạo Menu Thanh menu ngang có sổ dọc xuống mình dự định sẽ updated thủ thuật lên bằng việc tạo các giao diện khác nhau cho menu khi xem ở các trang khác nhau, ví dụ như các trang label. Nhưng sau đó mình nhớ đến kênh14 cũng có menu như vậy (chỉ khác là không có dropdown) mà giao diện lại đẹp nữa, nên mình quyết định Rip menu này. Và ở bài này menu sẽ không có hiệu ứng dropdown, mình dự định sẽ thêm hiệu ứng dropdown trong thời gian tới.


Xem DEMO
Hình ảnh minh họa :

Updated: Đã cập nhật hiệu ứng sổ dọc cho menu, các bạn có thể xem ở bên dưới

Do làm biếng design giao diện cho nó, nên mình lấy hình nên bên kênh 14 về rồi fix lại để giới thiệu cho mọi người. Và sau đây là 1 số tính năng của nó :
- Tự động thay đổi giao diện của menu cho các trang định sẵn.
- có hiệu ứng trang hiện hành (current) trên menu.
- có 6 kiểu giao diện cho các lựa chọn để thay đổi.

Sau đây là các bước thực hiện :
- Tạo 1 widget HTML/javascript ở nơi muốn đặt menu (tốt nhất là trên header của blog), sau đó dán đoạn code bên dưới vào :
<style type="text/css">
#promenu ul li a:hover {text-decoration:none;}
#promenu {
background-repeat: repeat-x;
background-image: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGqbe2kraSnFH63oJzROqKUkBn-Es9Er7iq9ESxWSi2u1VVwSCuBWtAXStmBDeax-M5qYZkJPXo1xu1bd7Y4YRzxzUiGQi5RdreJUDfZFaIVn6RbbrsA7LVK6Ky4aQ4ZSXMCLGmPzaTkIw/s400/1-6-bg.png);
width: 100%;
height: 32px;
}
.menu {
list-style: none;
width: 100%;
margin: auto!important;
}
.menu li {
float: left;
text-align: center;
padding:0!important;
}
.menu li a {
color: white;
}
.menu .active, .menu li:hover {
background-position: 0 -34px;
float: left;
}
.menu .active span, .menu span:hover {
background-position: 100% -34px;
float: left;
line-height: 30px;
height: 30px;
}
.menu li a span {
font: 12px/31px Tahoma;
font-weight: 700;
display: block;
text-align: center;
padding: 0 8px 0 9px;
}
.menusep {
background-position: 0 0;
height: 32px;
line-height: 32px;
width: 2px;
}
</style>

<script type="text/javascript">
//<![CDATA[
var style1=["0px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipe1OfECoE4-Dz3sdKLZ-lPLsAcFmoBcgSYsAeYyGRXZ1f8tgoAVRKDjnHUxissNRsm-Bcc73GI29kH-EN-Qw9-1xkci3D0ZfQXYuxNYYP-zBsda3Od4swg15TREQkUx9_OVFZsr8DJp0T/s318/style1-sp.png"];
var style2=["-40px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLavF9O3bTRVfqlKKUOXaDZ3Zu6x4rmSRD6yMaMR_iQyIrnQBVN8Z9qf8NvC4tpGAP4nvv-4MJyYO_j69Ot0ygQ8yJhwNO_JbVvzEmbB9YJ_HYDXrGpdhrwUEnwyG980JByoAf5-jrB6Ha/s318/style2-sp.png"];
var style3=["-80px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCM0z4-5d4wztb_C63GsE5aQqA2FMpJ1XwrtcmfmAkB-OEA3apBb0CGr3ksBGVY89VDVNExPpcd_65Kgwj5Icgmj0pLFVKV0wIUopTLoGcgYdIFyFOpTiy6xKsIall_gUE3RQIsVtLzKmz/s318/style3-sp.png"];
var style4=["-120px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcf-rm4G2E3y-hTtGKr6YIHTJdYYKop-M4J7sWPeFKHK_Vp8ukRvrVImWHiyz8r8KFWR-gSUrB5su8FpEeZFXayXrDmc3UJX_xuKUFVCd68MAkSfRbl37BdvkvBsKLYWLN6Q8jigN2a4c-/s318/style4-sp.png"];
var style5=["-160px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTDP6gA5N_WGxPMWmivYwQz4gZmL1r3XEiz0NsHsoiZXdcoShFVi0r9s7h40DOaxSFUhiyzuM0VhWWSl4DKz8mf81o0lPZN3jCspAr5ojzVJEwcl-yjlT-J1r53BEE2fsY81dQjoUyFHut/s318/style5-sp.png"];
var style6=["-200px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqz2ORpp03YDXfFyWpGNtlUbNr0NIuoQXLiHwjvGPrphCnvVyl13cbPn2P5ifRnlJcUrQzRshTYMux8Jb5gmLQhHrygEzCkK0AxETuAzsFE7ZfrUN6S7kL9r64eHLow8n6bknVGBT0TMFM/s318/style6-sp.png"];

var m0=["http://demo.fandung.com","Home","home_id"];
var m1=["link_menu1","Menu1","m_id1"];
var m2=["link_menu2","Menu2","m_id2"];
var m3=["link_menu3","Menu3","m_id3"];
var m4=["link_menu4","Menu4","m_id4"];
var m5=["link_menu5","Menu5","m_id5"];
var m6=["link_menu6","Menu6","m_id6"];

var ttmenu = [m0,m1,m2,m3,m4,m5,m6];

var n=ttmenu.length;
var list_menu=[];
var list_active=[];
var c_menu='';
var m_homepage='http://demo.fandung.com';
var h_cond=m_homepage+'/search';

var active_cond = location.href;
var home_cond=active_cond.split("?")[0];

var bg_pos='';
var sp_img='';

if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[2][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[3][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}
else if (active_cond.indexOf(ttmenu[4][0])!=-1) {bg_pos=style5[0];sp_img=style5[1];}
else if (active_cond.indexOf(ttmenu[5][0])!=-1) {bg_pos=style6[0];sp_img=style6[1];}
else if (active_cond.indexOf(ttmenu[6][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else {bg_pos=style1[0];sp_img=style1[1];}

var mcss = document.createElement('style');
mcss.type = 'text/css';
mcss.innerHTML = '#promenu {background-position: 0 '+bg_pos+'} .menu li:hover, .menu .active, .menu .active span, .menusep, .menu span:hover {background-image: url('+sp_img+')}';
document.body.appendChild(mcss);

c_menu +='<div id="promenu"><ul class="menu">';

for (var i=0;i<n;i++) {

if ((home_cond==m_homepage)||(home_cond==h_cond)) {list_active[0]='class="active"';}
else if (active_cond.indexOf(ttmenu[i][0])!=-1) {list_active[i]='class="active"';} else {list_active[i]='';}

list_menu[i]='<li><a href="'+ttmenu[i][0]+'" '+list_active[i]+' id="'+ttmenu[i][2]+'"><span>'+ttmenu[i][1]+'</span></a></li>';
c_menu +=list_menu[i];
if (i<n-1) {c_menu +='<li class="menusep"> </li>';}
}
c_menu +='</ul></div>';
document.write(c_menu);

//]]>
</script>

Một vài hướng dẫn :
- Việc đầu tiên là thay http://demo.fandung.com thành tên miền của blog bạn, nhớ là không có dấu (/) theo sau tên miền.
- Để thêm menu, bớt menu, thay đổi tên hiển thị của menu, thay đổi link liên kết của menu,... các bạn chỉnh sửa ở đoạn code như bên dưới :
...
...
var m0=["http://demo.fandung.com","Home","home_id"];
var m1=["link_menu1","Menu1","m_id1"];
var m2=["link_menu2","Menu2","m_id2"];
var m3=["link_menu3","Menu3","m_id3"];
var m4=["link_menu4","Menu4","m_id4"];
var m5=["link_menu5","Menu5","m_id5"];
var m6=["link_menu6","Menu6","m_id6"];

var ttmenu = [m0,m1,m2,m3,m4,m5,m6];
...
...
- http://demo.fandung.com thay bằng địa chỉ trang chủ của blog bạn
- link_menu1, link_menu2, ... là đia chỉ liên kết của các menu.
- Menu1, Menu2, ... là tên hiển thị của các menu.
- nếu muốn thêm nhiều menu nữa thì các bạn thêm code tương tự như bên dưới :
...
...
var m0=["http://demo.fandung.com","Home","home_id"];
var m1=["link_menu1","Menu1","m_id1"];
var m2=["link_menu2","Menu2","m_id2"];
var m3=["link_menu3","Menu3","m_id3"];
var m4=["link_menu4","Menu4","m_id4"];
var m5=["link_menu5","Menu5","m_id5"];
var m6=["link_menu6","Menu6","m_id6"];
var m7=["link_menu7","Menu7","m_id7"];
var m8=["link_menu8","Menu8","m_id8"];


var ttmenu = [m0,m1,m2,m3,m4,m5,m6,m7,m8];
...
...
- để tùy chọn style cho menu ở mỗi trang, các bạn chỉnh sửa ở đoạn code bên dưới :
...
...
if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[2][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[3][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}
else if (active_cond.indexOf(ttmenu[4][0])!=-1) {bg_pos=style5[0];sp_img=style5[1];}
else if (active_cond.indexOf(ttmenu[5][0])!=-1) {bg_pos=style6[0];sp_img=style6[1];}
else if (active_cond.indexOf(ttmenu[6][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else {bg_pos=style1[0];sp_img=style1[1];}
...
...
- ttmenu[1][0], ttmenu[2][0], ..., ttmenu[6][0] ; đây là các phần tử trong mảng 2 chiều ttmenu, tương ứng với địa chỉ liên kết của các menu : Menu1, Menu2, ..., Menu6
- ở trên menu0, tức là menu HOME mình cho style mặc định là style1. cùng style với các trang liên kết không có trong menu (ví dụ các trang archive hoặc trang bài viết, ...) , hoặc các liên kết không được chọn style để hiển thị.
- code trên sẽ được hình dung như bên dưới :
Menu0 ------ style1
Menu1 ------ style2
Menu2 ------ style3
Menu3 ------ style4
Menu4 ------ style5
Menu5 ------ style6
Menu6 ------ style2
Trang khác ------ style1
- Nếu muốn thay đổi style cho các trang, các bạn chỉ cần đổi tên style1, style2,... thành các style khác là được. tức là các vị trí trong code bên dưới :
...
...
if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[2][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[3][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}
else if (active_cond.indexOf(ttmenu[4][0])!=-1) {bg_pos=style5[0];sp_img=style5[1];}
else if (active_cond.indexOf(ttmenu[5][0])!=-1) {bg_pos=style6[0];sp_img=style6[1];}
else if (active_cond.indexOf(ttmenu[6][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else {bg_pos=style1[0];sp_img=style1[1];}
...
...

- Nếu như có nhiều menu thì các bạn cứ thêm code như bên dưới để chọn style cho nó :
...
...
if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[2][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[3][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}
else if (active_cond.indexOf(ttmenu[4][0])!=-1) {bg_pos=style5[0];sp_img=style5[1];}
else if (active_cond.indexOf(ttmenu[5][0])!=-1) {bg_pos=style6[0];sp_img=style6[1];}
else if (active_cond.indexOf(ttmenu[6][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[7][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[8][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}

else {bg_pos=style1[0];sp_img=style1[1];}
...
...
- lưu ý : ttmenu[7][0], và ttmenu[8][0] là liên kết của các Menu7, và Menu8.
- nếu muốn chỉ 1 trang nào đó có giao diện đặc biệt khác với các trang còn lại (ở đây mình ví dụ là trang Menu1) thì đoạn code ở trên sẽ chỉ còn như bên dưới :
...
...
if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else {bg_pos=style1[0];sp_img=style1[1];}
...
...
- Đoạn code trên có nghĩa là chỉ có trang Menu1 là có giao diện riêng biệt là Style2, còn các trang khác sẽ có giao diện Style1.

Như vậy mình hướng dẫn đã xong. các bạn cứ test thử, nếu có trục trặc gì mình sẽ fix lại bài viết và cập nhật thêm hướng dẫn.

----- UPDATED -----
K14 - Promenu (với hiệu ứng sổ dọc)
- ở bản update này, mình sẽ cập nhật thêm tính năng thêm submenu cho menu chính. Tính năng này mình kết hợp từ bài viết "Tạo menu nằm ngang với hiệu ứng sổ dọc".
- Để thực hiện việc cập nhật này, các bạn phải xem lại bài viết Tạo Menu Thanh menu ngang có sổ dọc xuống

Xem DEMO

Hình ảnh minh họa :

- Sau đây là code mẫu của thủ thuật đã updated, các bạn thực hiện theo hướng dẫn của bài này và bài Tạo Menu Thanh menu ngang có sổ dọc xuống để có thể chỉnh sửa lại từ code mẫu :
<script src="http://fandung.googlecode.com/svn/trunk/js/dropdown2.js" type="text/javascript"></script>

<style type="text/css">
#promenu ul li a:hover {text-decoration:none;}
#promenu {
background-repeat: repeat-x;
background-image: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGqbe2kraSnFH63oJzROqKUkBn-Es9Er7iq9ESxWSi2u1VVwSCuBWtAXStmBDeax-M5qYZkJPXo1xu1bd7Y4YRzxzUiGQi5RdreJUDfZFaIVn6RbbrsA7LVK6Ky4aQ4ZSXMCLGmPzaTkIw/s400/1-6-bg.png);
width: 100%;
height: 32px;
}
.menu {
list-style: none;
width: 100%;
margin: auto!important;
}
.menu li {
float: left;
text-align: center;
padding:0!important;
}
.menu li a {
color: white;
height:30px;
display:block;
}
.menu .active, .menu li:hover {
background-position: 0 -34px;
float: left;
}

.menu .active span, .menu span:hover {
background-position: 100% -34px;
float: left;
line-height: 30px;
height: 30px;
}

.menu li a span {
font: 12px/31px Tahoma;
font-weight: 700;
display: block;
text-align: center;
padding: 0 8px 0 9px;
}
.menusep {
background-position: 0 0;
height: 32px;
line-height: 32px;
width: 2px;
}
.promenu_sub {
background-repeat: repeat-x;
background-image: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxrvcTaipuRHnrxBc670UswZvreoFWYyhTw5RJ6YZM7C301oNRV9jPFMYkEYrfKJyKGda1UXEPFcQnmfOrHeT6Ki-kv-l4Bn7jD5nUKxY2nFxMlHK1Fvlb4C4xDb64FGOOplq1SiPSTXiG/s240/1-6-bg_sub2.png);
margin-top:1px;
padding:1px;
color: #fff;;
margin: 1 1px;
padding: 7px 12px;
font-weight:bold;
font-family:Arial, Helvetica, sans-serif;
font-size:12px;
cursor:pointer;
border-top:1px solid #ededed;
}
</style>

<script type="text/javascript">
//<![CDATA[
var style1=["0px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipe1OfECoE4-Dz3sdKLZ-lPLsAcFmoBcgSYsAeYyGRXZ1f8tgoAVRKDjnHUxissNRsm-Bcc73GI29kH-EN-Qw9-1xkci3D0ZfQXYuxNYYP-zBsda3Od4swg15TREQkUx9_OVFZsr8DJp0T/s318/style1-sp.png"];

var style2=["-40px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLavF9O3bTRVfqlKKUOXaDZ3Zu6x4rmSRD6yMaMR_iQyIrnQBVN8Z9qf8NvC4tpGAP4nvv-4MJyYO_j69Ot0ygQ8yJhwNO_JbVvzEmbB9YJ_HYDXrGpdhrwUEnwyG980JByoAf5-jrB6Ha/s318/style2-sp.png"];

var style3=["-80px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCM0z4-5d4wztb_C63GsE5aQqA2FMpJ1XwrtcmfmAkB-OEA3apBb0CGr3ksBGVY89VDVNExPpcd_65Kgwj5Icgmj0pLFVKV0wIUopTLoGcgYdIFyFOpTiy6xKsIall_gUE3RQIsVtLzKmz/s318/style3-sp.png"];

var style4=["-120px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcf-rm4G2E3y-hTtGKr6YIHTJdYYKop-M4J7sWPeFKHK_Vp8ukRvrVImWHiyz8r8KFWR-gSUrB5su8FpEeZFXayXrDmc3UJX_xuKUFVCd68MAkSfRbl37BdvkvBsKLYWLN6Q8jigN2a4c-/s318/style4-sp.png"];

var style5=["-160px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTDP6gA5N_WGxPMWmivYwQz4gZmL1r3XEiz0NsHsoiZXdcoShFVi0r9s7h40DOaxSFUhiyzuM0VhWWSl4DKz8mf81o0lPZN3jCspAr5ojzVJEwcl-yjlT-J1r53BEE2fsY81dQjoUyFHut/s318/style5-sp.png"];

var style6=["-200px","https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqz2ORpp03YDXfFyWpGNtlUbNr0NIuoQXLiHwjvGPrphCnvVyl13cbPn2P5ifRnlJcUrQzRshTYMux8Jb5gmLQhHrygEzCkK0AxETuAzsFE7ZfrUN6S7kL9r64eHLow8n6bknVGBT0TMFM/s318/style6-sp.png"];

var m0=["http://demo.fandung.com","Home","home_id"];
var m1=["/search/label/Label1","Label1","id1"];
var m2=["/search/label/Label2","Label2","id2"];
var m3=["/search/label/Label3","Label3","id3"];
var m4=["/search/label/Label4","Label4","id4"];
var m5=["/search/label/Label5","Label5","id5"];
var m6=["/search/label/Label6","Label6","id6"];
var m7=["/search/label/Label7","Label7","id7"];
var m8=["/search/label/Label8","Label8","id8"];
var m9=["/search/label/Label9","Label9","id9"];

var ttmenu = [m0,m1,m2,m3,m4,m5,m6,m7,m8,m9];
var n=ttmenu.length;
var list_menu=[];
var list_active=[];
var c_menu='';
var m_homepage='http://demo.fandung.com/';
var h_cond=m_homepage+'search';

var active_cond = location.href;
var home_cond=active_cond.split("?")[0];

var bg_pos='';
var sp_img='';

if (active_cond.indexOf(ttmenu[1][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[2][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else if (active_cond.indexOf(ttmenu[3][0])!=-1) {bg_pos=style4[0];sp_img=style4[1];}
else if (active_cond.indexOf(ttmenu[4][0])!=-1) {bg_pos=style5[0];sp_img=style5[1];}
else if (active_cond.indexOf(ttmenu[5][0])!=-1) {bg_pos=style6[0];sp_img=style6[1];}
else if (active_cond.indexOf(ttmenu[6][0])!=-1) {bg_pos=style2[0];sp_img=style2[1];}
else if (active_cond.indexOf(ttmenu[7][0])!=-1) {bg_pos=style3[0];sp_img=style3[1];}
else {bg_pos=style1[0];sp_img=style1[1];}

var mcss = document.createElement('style');
mcss.type = 'text/css';
mcss.innerHTML = '#promenu, .promenu_sub {background-position: 0 '+bg_pos+'} .menu li:hover, .menu .active, .menu .active span, .menusep, .menu span:hover {background-image: url('+sp_img+')}';
document.body.appendChild(mcss);

// submenu
function otab(){document.write('<table border="0" bordercolor="#999" style="background-color: #FFF" cellspacing="0" cellpadding="0">');}

function submn(submn_link,submn_text){ document.write('<tr><td onmouseover="this.style.background=\'url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGqbe2kraSnFH63oJzROqKUkBn-Es9Er7iq9ESxWSi2u1VVwSCuBWtAXStmBDeax-M5qYZkJPXo1xu1bd7Y4YRzxzUiGQi5RdreJUDfZFaIVn6RbbrsA7LVK6Ky4aQ4ZSXMCLGmPzaTkIw/s400/1-6-bg.png) repeat-x 0 '+bg_pos+'\'" onmouseout="this.style.background=\'url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxrvcTaipuRHnrxBc670UswZvreoFWYyhTw5RJ6YZM7C301oNRV9jPFMYkEYrfKJyKGda1UXEPFcQnmfOrHeT6Ki-kv-l4Bn7jD5nUKxY2nFxMlHK1Fvlb4C4xDb64FGOOplq1SiPSTXiG/s240/1-6-bg_sub2.png) repeat-x 0 '+bg_pos+'\'" class="promenu_sub" onclick="window.location.href=\''+submn_link+'\'">'+submn_text+'</td></tr>');}

function ctab(){document.write('<\/table>');}

function otab(child_id){document.write('<table id="' + child_id +'" border="0" bordercolor="#999" style="background-color: #FFF" cellspacing="0" cellpadding="0">');}

//submenu

c_menu +='<div id="promenu"><ul class="menu">';

for (var i=0;i<n;i++) {

if ((home_cond==m_homepage)||(home_cond==h_cond)) {list_active[0]='class="active"';}
else if (active_cond.indexOf(ttmenu[i][0])!=-1) {list_active[i]='class="active"';} else {list_active[i]='';}

list_menu[i]='<li><a href="'+ttmenu[i][0]+'" '+list_active[i]+' id="'+ttmenu[i][2]+'"><span>'+ttmenu[i][1]+'</span></a></li>';
c_menu +=list_menu[i];
if (i<n-1) {c_menu +='<li class="menusep"> </li>';}
}
c_menu +='</ul></div>';
document.write(c_menu);

//]]>
</script>

<script type="text/javascript">
otab("id1_child");
submn('link_submenu1.1','Submenu 1.1');
submn('link_submenu1.2','Submenu 1.2');
ctab();
at_attach("id1", "id1_child", "hover", "y", "pointer");

otab("id2_child");
submn('link_submenu2.1','Submenu 2.1');
ctab();
at_attach("id2", "id2_child", "hover", "y", "pointer");

otab("id3_child");
submn('link_submenu3.1','Submenu 3.1');
ctab();
at_attach("id3", "id3_child", "hover", "y", "pointer");

otab("id4_child");
submn('link_submenu4.1','Submenu 4.1');
submn('link_submenu4.2','Submenu 4.2');
submn('link_submenu4.3','Submenu 4.3');
submn('link_submenu4.4','Submenu 4.4');
submn('link_submenu4.5','Submenu 4.5');
submn('link_submenu4.6','Submenu 4.6');
ctab();
at_attach("id4", "id4_child", "hover", "y", "pointer");

otab("id5_child");
submn('link_submenu5.1','Submenu 5.1');
submn('link_submenu5.2','Submenu 5.2');
ctab();
at_attach("id5", "id5_child", "hover", "y", "pointer");

otab("id6_child");
submn('link_submenu6.1','Submenu 6.1');
ctab();
at_attach("id6", "id6_child", "hover", "y", "pointer");

otab("id7_child");
submn('link_submenu7.1','Submenu 7.1');
submn('link_submenu7.2','Submenu 7.2');
submn('link_submenu7.3','Submenu 7.3');
ctab();
at_attach("id7", "id7_child", "hover", "y", "pointer");

otab("id8_child");
submn('link_submenu8.1','Submenu 8.1');
submn('link_submenu8.2','Submenu 8.2');
submn('link_submenu8.3','Submenu 8.3');
submn('link_submenu8.4','Submenu 8.4');
submn('link_submenu8.5','Submenu 8.5');
submn('link_submenu8.6','Submenu 8.6');
submn('link_submenu8.7','Submenu 8.7');
ctab();
at_attach("id8", "id8_child", "hover", "y", "pointer");
</script>
- bản updated vẫn chưa hoàn thiện ở phần hiện hiệu ứng thay đổi style cho menu ở các trang submenu, mình sẽ fix sớm khi có thể. 
Theo: fandung.com
[Xem tiếp...]


Subscribe

 

Categories

Popular Posts

Return to top of page Copyright © 2012 | By K3nvil