찾다
웹 프론트엔드JS 튜토리얼JavaScript 기사에서 동적 메뉴를 작성하십시오

JavaScript 기사에서 동적 메뉴를 작성하십시오

여기서는 DHTML 드롭 다운/풀다운 메뉴에 대해 이야기하지 않습니다. 여기서는 JavaScript를 사용하는 간단한 탐색 메뉴에 대해 이야기하고 있습니다. 활성 페이지를 식별하고 따라서 다른 링크와 다르게 연결되는 것을 표시하므로 사용자가 쉽게 탐색 할 수 있습니다. 여기에서 내비게이션 메뉴의 모든 페이지에 사용될 단일 .js 파일을 사용합니다. 따라서 모든 페이지를 업데이트 할 필요는 없습니다. 하나의 JavaScript 라이브러리 파일 (.js 파일) 만 업데이트해야합니다. 예를 들어이 3 가지 탐색 링크를 고려하십시오.JavaScript 기사에서 동적 메뉴를 작성하십시오 링크 1이 활성화되었습니다.JavaScript 기사에서 동적 메뉴를 작성하십시오 링크 2가 활성화되었습니다.JavaScript 기사에서 동적 메뉴를 작성하십시오 링크 3이 활성화되었습니다. 보시다시피, 이것은 어떤 링크가 활성화되어 있는지에 따라 다른 페이지에 내비게이션 메뉴가 어떻게 나타나는지에 대한 샷입니다. 이 메뉴는 단일 JavaScript 파일로 생성됩니다. 메뉴에 대한 클래스 (.links)를 정의하고 .links : active에 대해 다른 속성을 할당하여 계단식 스타일 시트 (CSS) 만 사용하여 이러한 메뉴를 만들 수 있습니다. 따라서 CSS 파일을 사용하여 메뉴를 만들 수 있습니다. 이것은 완벽하지만 여기에서 JavaScript를 사용하는 데 이점이 있습니다. 위의 샷에서 볼 수 있듯이 활성 링크에는 결국 "" ""문자가 있습니다. 이것은 활성 링크에 대해서만 생성되므로 동적으로 생성됩니다. JavaScript를 사용하면 링크를 실제로 활성화시키는 모든 문자 나 상징적 인 이미지를 사용할 수 있습니다.
구현
이러한 유형의 메뉴를 구현하려면 우선 링크의 스타일을 정의하기 위해 CSS 파일 인 CSS 파일입니다. 다음은 JavaScript 파일 Nav.js가 온다. Nav.js 파일에서 우선 3 개의 배열을 선언합니다. "링크"라는 하나의 배열에는 링크 이름이 포함됩니다. 다른 배열을 "links_text"라고하며 링크의 텍스트 (예 : Link 1)로 구성됩니다. 전자는이 파일과 비교하는 데 사용될 것입니다. 링크 파일의 제목을 사용하여 링크 배열의 다양한 요소를 확장자를 제외하십시오 (예 : 첫 번째 링크가 index.htm, 이름 IT 인덱스로 이동하는 경우). "Links_URL"이라는 세 번째 배열에는 링크가 사용자를 데려 오는 URL이 포함되어 있습니다. 이제 우리가 원하는 것은 배열 링크의 각 요소를 확장자없이 현재 페이지 파일 이름과 비교하는 것입니다. 그런 다음 링크에 스타일과 링크 텍스트에 추가하기로 결정한 추가 텍스트 또는 이미지를 활성 페이지를 강조 표시하기로 결정했습니다. LOC를 비교 문자열로 둡니다. loc는 다음과 같이 찾을 수 있습니다. var loc = string (this.location); loc = loc.split ( "/"); loc = loc [loc.length-1] .split ( "."); loc = loc [loc.length-2]; 따라서 현재 페이지가 https://www.sitepoint.com/index.htm 인 경우 loc가 색인이됩니다. 이제 배열 링크의 각 요소와 이것을 비교합니다. 이 배열과 loc의 첫 번째 요소는 동일 하므로이 링크를 다음 방식으로 씁니다. document.write ( ' href = " 'links_url [i]'"> 'links_text [i]' »
'); 링크 배열의 다른 요소는 LOC와 같지 않으므로 다음과 같이 작성됩니다. docum links_url [i] '' "> 'links_text [i] '); 그리고 그것은 당신의 역동적 인 메뉴입니다! 모든 페이지에 배치해야 할 코드는 다음과 같습니다. 페이지에 내비게이션 메뉴가 필요한 곳에이 코드를 배치하십시오. 필요한 다른 코드는 이며 HTML 페이지의 섹션에 배치해야합니다. 따라서 1 nav.js를 나열하는 것은 다음과 같습니다. 링크 세부 사항 * / var links = new Array ( "link1", "link2", "link3"); var links_text = new Array ( "Link 1", "Link 2", "Link 3"); var links_url = new Array ( "link1.htm", "link2.htm", "link3.htm"); / * 위치를 해결 */ var loc = string (this.location); loc = loc.split ( "/"); loc = loc [loc.length-1] .split ( "."); loc = loc [loc.length-2]; / * 메뉴 함수 생성 */ 함수 dyn_menu_gen () {for (var i = 0; i 'links_text [i]' '); } document.write ( ' '); }} / * 메뉴 생성 * / dyn_menu_gen (); Listing 2, Links_style.css는 다음과 같습니다. .Explorer {font-family : Verdana, Arial, Helvetica; 글꼴 크기 : 8pt; 글꼴 중량 : 정상; 텍스트 결정 : 없음; 색상 :#000000; 배경 :#b5d0ff; 커서 : 손; 너비 : 150px; 높이 : 30px; 국경 : 1 SOLID #A6C0ED} .Explorer_over {font-family : Verdana, Arial, Helvetica; 글꼴 크기 : 8pt; 글꼴 중량 : 정상; 텍스트 결정 : 없음; 색상 :#000000; 배경 :#A7C0EB; 커서 : 손; 너비 : 150px; 높이 : 30px; 경계 오른쪽 : 1 Solid #5C6980; 국경-바닥 : 1 Solid #5C6980; 왼쪽 경계 : 1 Solid #B8D3ff; 테두리 탑 : 1 SOLID #B8D3FF} .Explorer_down {font-family : Verdana, Arial, Helvetica; 글꼴 크기 : 8pt; 글꼴 중량 : 정상; 텍스트 결정 : 없음; 색상 :#000000; 배경 :#A7C0EB; 커서 : 손; 너비 : 150px; 높이 : 30px; 왼쪽 경계 : 1 Solid #5C6980; 테두리 탑 : 1 Solid #5C6980; 경계 오른쪽 : 1 Solid #B8D3ff; Border-Bottom : 1 Solid #B8D3ff} .Explorer_Active {Font-Family : Verdana, Arial, Helvetica; 글꼴 크기 : 8pt; 글꼴 중량 : 정상; 텍스트 결정 : 없음; 색상 :#000000; 배경 : #ffffff; 커서 : 손; 너비 : 150px; 높이 : 30px} .menu {font-family : Verdana, Arial, Helvetica; 글꼴 크기 : 8pt; 글꼴 중량 : 정상; 텍스트 결정 : 없음; 색상 :#000000}이 스크립트가 웹 페이지의 동적 JavaScript 탐색의 생성을 단순화하기를 바랍니다!

JavaScript의 동적 메뉴에 대해 자주 묻는 질문

JavaScript의 동적 메뉴에 하위 메뉴를 추가하려면 어떻게해야합니까?

JavaScript의 동적 메뉴에 하위 메뉴를 추가하려면 새 메뉴 항목을 작성한 다음 부모 메뉴 항목에 어린이를 추가하는 것이 포함됩니다. AppendChild () 메소드를 사용하여이를 달성 할 수 있습니다. 간단한 예는 다음과 같습니다.

var parentmenuitem = document.getElementById ( 'parentmenuitem');
var submenuitem = document.createElement ( 'li');
submenuitem.innerhtml = 'submenu 항목';
Parentmenuitem.appendChild (submenuitem);
이 예에서 'ParentMenuitem'은 하위 메뉴를 추가하려는 메뉴 항목의 ID입니다. 'subenuitem'은 추가하는 새로운 하위 메뉴 항목입니다.

JavaScript의 동적 메뉴에서 메뉴 항목을 제거하려면 어떻게해야합니까?

JavaScript의 동적 메뉴에서 메뉴 항목을 제거하려면 removeChild () 메소드를 사용할 수 있습니다. 이 메소드는 지정된 요소의 지정된 하위 노드를 제거합니다. 예는 다음과 같습니다.

var menuitem = document.getElementById ( 'menuitem');
menuitem.parentnode.removechild (menuitem);
이 예에서 'menuitem'은 제거하려는 메뉴 항목의 ID입니다.

JavaScript의 동적 메뉴에서 메뉴 항목의 텍스트를 어떻게 변경할 수 있습니까?

javaScript의 동적 메뉴에서 메뉴 항목의 텍스트 변경은 InnerHTML 속성을 사용하여 수행 할 수 있습니다. 예는 다음과 같습니다.

var menuitem = document.getElementById ( 'menuitem');
menuitem.innerhtml = '새 메뉴 항목 텍스트';
이 예에서 'menuitem'은 텍스트를 변경하려는 메뉴 항목의 ID이며 '새 메뉴 항목 텍스트'는 설정하려는 새 텍스트입니다.

JavaScript의 동적 메뉴에서 메뉴 항목에 이벤트 리스너를 추가하려면 어떻게해야합니까?

addeventListener () 메소드를 사용하여 JavaScript의 동적 메뉴에서 메뉴 항목에 이벤트 리스너 추가를 수행 할 수 있습니다. 이 메소드는 이벤트 핸들러를 지정된 요소에 첨부합니다. 예는 다음과 같습니다.

var menuitem = document.getElementById ( 'menuitem');
menuitem.addeventListener ( 'click', function () {
Alert ( '메뉴 항목 클릭!');
});
이 예에서 'menuitem'은 이벤트 리스너를 추가하려는 메뉴 항목의 ID입니다. 이벤트 리스너는 메뉴 항목을 클릭하면 경고가 표시됩니다.

JavaScript의 동적 메뉴에서 메뉴 항목을 어떻게 스타일링 할 수 있습니까?

JavaScript의 동적 메뉴의 메뉴 항목 스타일은 스타일 속성을 사용하여 수행 할 수 있습니다. 이 속성은 요소의 스타일 속성을 설정하거나 반환합니다. 예는 다음과 같습니다.

var menuitem = document.getElementById ( 'menuitem');
menuitem.style.color = '빨간색';
menuitem.style.fontsize = '20px';
이 예에서 'menuitem'은 스타일을 유지하려는 메뉴 항목의 ID입니다. 스타일 속성은 메뉴 항목의 색상과 글꼴 크기를 변경하는 데 사용됩니다.

배열을 사용하여 JavaScript에서 동적 메뉴를 어떻게 만들려면?

배열을 사용하여 JavaScript에서 동적 메뉴를 작성하려면 배열을 반복하고 배열의 각 요소에 대한 새 메뉴 항목을 작성하는 것이 포함됩니다. 예는 다음과 같습니다.

var menuitems = [ 'home', 'about', 'contact'];
var menu = document.getElementById ( '메뉴');

for (var i = 0; i var menuitem = document.createElement ( 'li');
menuitem.innerhtml = menuitems [i];
메뉴. AppendChild (menuitem);
}
이 예에서 'menuitems'는 다양한 메뉴 항목 텍스트이며 '메뉴'는 메뉴 항목을 추가하려는 메뉴의 ID입니다.

JSON 데이터를 사용하여 JavaScript에서 동적 메뉴를 어떻게 만들려면?

JSON 데이터를 사용하여 JavaScript에서 동적 메뉴를 작성하려면 JSON 데이터를 구문 분석하고 구문 분석 데이터의 각 객체에 대한 새 메뉴 항목을 작성하는 것이 포함됩니다. 예는 다음과 같습니다.

var jsondata = '[{ "text": "home"}, { "text": "about"}, { "text": "contact"}]';
var menuitems = json.parse (jsondata);
var menu = document.getElementById ( '메뉴');

for (var i = 0; i var menuitem = document.createElement ( 'li');
menuitem.innerhtml = menuitems [i] .text;
메뉴. AppendChild (menuitem);
}
이 예에서 'JSONDATA'는 메뉴 항목 객체의 JSON 문자열이며 '메뉴'는 메뉴 항목을 추가하려는 메뉴의 ID입니다.

서버의 데이터를 사용하여 JavaScript에서 동적 메뉴를 어떻게 만들려면?

서버에서 데이터를 사용하여 JavaScript에서 동적 메뉴를 작성하려면 데이터를 가져 오기 위해 서버에 AJAX 요청을 작성한 다음 서버에서 반환 한 각 데이터에 대한 새 메뉴 항목을 작성하는 것이 포함됩니다. 다음은 Fetch API를 사용하는 예입니다.

Fetch ( 'https://example.com/menuitems')
.Then (응답 => response.json ())
. 그런데 (data => {
var menu = document.getElementById ( '메뉴');

for (var i = 0; i var menuitem = document.createElement ( 'li');
menuitem.innerhtml = data [i] .text;
메뉴. AppendChild (menuitem);
}
});
이 예에서 'https://example.com/menuitems'는 메뉴 항목 데이터를 반환하는 서버 엔드 포인트의 URL입니다.

JavaScript에서 동적 드롭 다운 메뉴를 어떻게 만들 수 있습니까?

JavaScript에서 동적 드롭 다운 메뉴를 작성하려면 새로운 선택 요소를 작성하고 각 메뉴 항목에 대해 옵션 요소를 추가해야합니다. 예는 다음과 같습니다.

var menuitems = [ 'home', 'about', 'contact'];
var dropdownmenu = document.createElement ( 'select');

for (var i = 0; i var 옵션 = document.createelement ( '옵션');
옵션 .value = menuitems [i];
옵션 .text = menuitems [i];
DropdownMenu.appendChild (옵션);
}

Document.body.appendChild (DropdownMenu);
이 예에서 'menuitems'는 다양한 메뉴 항목 텍스트입니다.

JavaScript에서 동적 컨텍스트 메뉴를 어떻게 만들 수 있습니까?

JavaScript에서 동적 컨텍스트 메뉴를 작성하려면 새 메뉴 요소를 작성하고 메뉴 항목을 추가 한 다음 오른쪽 마우스 버튼을 클릭 할 때 마우스 위치에 메뉴를 표시하는 것이 포함됩니다. 예는 다음과 같습니다.

var menuitems = [ 'cut', 'copy', 'paste'];
var contextMenu = document.createElement ( 'ul');
contextmenu.style.display = 'none';
contextmenu.style.position = '절대';

for (var i = 0; i var menuitem = document.createElement ( 'li');
menuitem.innerhtml = menuitems [i];
ContextMenu. AppendChild (menuitem);
}

document.body.appendChild (ContextMenu);

document.addeventListener ( 'ContextMenu', function (e) {
e.preventDefault ();
contextmenu.style.left = e.pagex 'px';
contextmenu.style.top = e.pagey 'px';
contextmenu.style.display = 'block';
});

document.addeventListener ( 'click', function () {
contextmenu.style.display = 'none';
});
이 예에서 'menuitems'는 컨텍스트 메뉴 항목 텍스트 배열입니다.

위 내용은 JavaScript 기사에서 동적 메뉴를 작성하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
JavaScript 데이터 유형 : 브라우저와 Nodejs 사이에 차이가 있습니까?JavaScript 데이터 유형 : 브라우저와 Nodejs 사이에 차이가 있습니까?May 14, 2025 am 12:15 AM

JavaScript 코어 데이터 유형은 브라우저 및 Node.js에서 일관되지만 추가 유형과 다르게 처리됩니다. 1) 글로벌 객체는 브라우저의 창이고 node.js의 글로벌입니다. 2) 이진 데이터를 처리하는 데 사용되는 Node.js의 고유 버퍼 객체. 3) 성능 및 시간 처리에는 차이가 있으며 환경에 따라 코드를 조정해야합니다.

JavaScript 댓글 : / / * * /사용 안내서JavaScript 댓글 : / / * * /사용 안내서May 13, 2025 pm 03:49 PM

javaScriptUSTWOTYPESOFSOFCOMMENTS : 단일 라인 (//) 및 multi-line (//)

Python vs. JavaScript : 개발자를위한 비교 분석Python vs. JavaScript : 개발자를위한 비교 분석May 09, 2025 am 12:22 AM

Python과 JavaScript의 주요 차이점은 유형 시스템 및 응용 프로그램 시나리오입니다. 1. Python은 과학 컴퓨팅 및 데이터 분석에 적합한 동적 유형을 사용합니다. 2. JavaScript는 약한 유형을 채택하며 프론트 엔드 및 풀 스택 개발에 널리 사용됩니다. 두 사람은 비동기 프로그래밍 및 성능 최적화에서 고유 한 장점을 가지고 있으며 선택할 때 프로젝트 요구 사항에 따라 결정해야합니다.

Python vs. JavaScript : 작업에 적합한 도구 선택Python vs. JavaScript : 작업에 적합한 도구 선택May 08, 2025 am 12:10 AM

Python 또는 JavaScript를 선택할지 여부는 프로젝트 유형에 따라 다릅니다. 1) 데이터 과학 및 자동화 작업을 위해 Python을 선택하십시오. 2) 프론트 엔드 및 풀 스택 개발을 위해 JavaScript를 선택하십시오. Python은 데이터 처리 및 자동화 분야에서 강력한 라이브러리에 선호되는 반면 JavaScript는 웹 상호 작용 및 전체 스택 개발의 장점에 없어서는 안될 필수입니다.

파이썬 및 자바 스크립트 : 각각의 강점을 이해합니다파이썬 및 자바 스크립트 : 각각의 강점을 이해합니다May 06, 2025 am 12:15 AM

파이썬과 자바 스크립트는 각각 고유 한 장점이 있으며 선택은 프로젝트 요구와 개인 선호도에 따라 다릅니다. 1. Python은 간결한 구문으로 데이터 과학 및 백엔드 개발에 적합하지만 실행 속도가 느립니다. 2. JavaScript는 프론트 엔드 개발의 모든 곳에 있으며 강력한 비동기 프로그래밍 기능을 가지고 있습니다. node.js는 풀 스택 개발에 적합하지만 구문은 복잡하고 오류가 발생할 수 있습니다.

JavaScript의 핵심 : C 또는 C에 구축 되었습니까?JavaScript의 핵심 : C 또는 C에 구축 되었습니까?May 05, 2025 am 12:07 AM

javaScriptisNotBuiltoncorc; it'SangretedLanguageThatrunsonOngineStenWrittenInc .1) javaScriptWasDesignEdasAlightweight, 해석 hanguageforwebbrowsers.2) Endinesevolvedfromsimpleplemporectreterstoccilpilers, 전기적으로 개선된다.

JavaScript 응용 프로그램 : 프론트 엔드에서 백엔드까지JavaScript 응용 프로그램 : 프론트 엔드에서 백엔드까지May 04, 2025 am 12:12 AM

JavaScript는 프론트 엔드 및 백엔드 개발에 사용할 수 있습니다. 프론트 엔드는 DOM 작업을 통해 사용자 경험을 향상시키고 백엔드는 Node.js를 통해 서버 작업을 처리합니다. 1. 프론트 엔드 예 : 웹 페이지 텍스트의 내용을 변경하십시오. 2. 백엔드 예제 : node.js 서버를 만듭니다.

Python vs. JavaScript : 어떤 언어를 배워야합니까?Python vs. JavaScript : 어떤 언어를 배워야합니까?May 03, 2025 am 12:10 AM

Python 또는 JavaScript는 경력 개발, 학습 곡선 및 생태계를 기반으로해야합니다. 1) 경력 개발 : Python은 데이터 과학 및 백엔드 개발에 적합한 반면 JavaScript는 프론트 엔드 및 풀 스택 개발에 적합합니다. 2) 학습 곡선 : Python 구문은 간결하며 초보자에게 적합합니다. JavaScript Syntax는 유연합니다. 3) 생태계 : Python에는 풍부한 과학 컴퓨팅 라이브러리가 있으며 JavaScript는 강력한 프론트 엔드 프레임 워크를 가지고 있습니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기