[英]Converting Jquery Toggle to Javascript
我是Web編程的新手。 我構建了一個幻燈片導航,並希望使其從左到中間滑動。 事情是我剛剛找到了一個Jquery代碼。 我試圖通過在Google上進行搜索來查找它,但匹配項與我要找的東西不匹配。
這是代碼:
$('.nav-side .nav-toggle').on('click', function(e){
e.preventDefault();
$(this).parent().toggleClass('nav-open');
})
我想知道是否可以將其翻譯成Javascript,因為我想繼續使用HTML,CSS和Javascript。
有人可以幫我嗎?
在純JavaScript中,應該是這樣的:
var elements = document.querySelectorAll('.nav-side .nav-toggle');
[].slice.call(elements).forEach(function(element) {
element.addEventListener('click', function() {
element.parentNode.classList.toggle('nav-open');
return false;
}, false);
});
JSFiddle: https ://jsfiddle.net/r0x7zehz/
您可以使用classList.toggle()
:
document.getElementsByClassName('nav-toggle')[0].addEventListener('click', function(e){
e.preventDefault();
e.target.parentNode.classList.toggle('nav-open');
});
這是一個codepen示例。
這是純JavaScript代碼
function clickHandler(dom)
{
dom.addEventListener('click', function(e) {
dom.parentNode.classList.toggle('nav-open');
return false;
}, false);
}
document.querySelector('.nav-side .nav-toggle').map(clickHandler);
這是您的HTML
<a href="#" class="nav-toggle" onclick="toggleFunction(this)">Toggle</a>
這是您的javascript,它添加了style =“ display:none;”。 當父樣式=“ display:block;”。 反之亦然
<script>
function toggleFunction(elem){
var parent = elem.parentNode;
if(hasClass(parent, 'nav-open')){
parent.classList.remove('nav-open');
}else{
parent.className += " nav-open";
}
}
function hasClass(element, cls) {
return (' ' + element.className + ' ').indexOf(' ' + cls + ' ') > -1;
}
</script>
我只是通過寫得到:
function clickHandler(dom){
dom.parentNode.classList.toggle('nav-open');
return false;
}
但感謝大家的回答:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.