Javascript 当其中一个li';s被点击了吗?
单击联系人时,我想减小主页的宽度,大约Javascript 当其中一个li';s被点击了吗?,javascript,css,onclick,html-lists,Javascript,Css,Onclick,Html Lists,单击联系人时,我想减小主页的宽度,大约。是否可以将webkit用于此事件或仅用于普通java onclick和onfocus事件?我正在努力理解CSS和HTML中的其他内容(如果有的话) <ul> <li>Home</li> <li>About</li> <li>Contact</li> </ul> 家 关于 接触 解决这个问题的方法有很多,这取决于您需要支持哪些浏览器,
。是否可以将webkit用于此事件或仅用于普通java onclick和onfocus事件?我正在努力理解CSS和HTML中的其他内容(如果有的话)
<ul>
<li>Home</li>
<li>About</li>
<li>Contact</li>
</ul>
- 家
- 关于
- 接触
解决这个问题的方法有很多,这取决于您需要支持哪些浏览器,以及您是否希望使用JavaScript框架来消除一些痛苦,尽管包括上述框架会增加页面的权重
这是一个非框架解决方案(),它可以在IE9、Firefox和Chrome/Safari中使用。对于本演示的不同之处在于包含了jQuery库,因此您需要在代码中添加类似于
的内容,或者下载jQuery并自己托管。有很多方法可以解决这个问题,这取决于您需要支持哪些浏览器,以及您是否希望使用JavaScript框架来消除一些痛苦,尽管包括上述框架会增加页面的权重
这是一个非框架解决方案(),它可以在IE9、Firefox和Chrome/Safari中使用。对于
的内容,或者下载jQuery并自己托管它
<ul>
<li>Home</li>
<li>About</li>
<li>Contact</li>
</ul>
li {
width:100px;
background-color:lightSkyBlue;
}
li.narrow {
width:50px;
}
// resize the list items apart from the one that is clicked
function resizeNotMe() {
var listItems = document.getElementsByTagName('li');
for (var i = 0; i < listItems.length; i++) {
if (listItems[i] !== this) {
listItems[i].className = 'narrow';
} else {
listItems[i].className = '';
}
}
}
// create click events on the list items
function load() {
var listItems = document.getElementsByTagName('li');
for (var i = 0; i < listItems.length; i++) {
listItems[i].addEventListener('click', resizeNotMe, false);
}
}
// run load function when page is loaded
document.addEventListener('DOMContentLoaded', load, false);
<ul>
<li onclick="resizeNotMe(this)">Home</li>
<li onclick="resizeNotMe(this)">About</li>
<li onclick="resizeNotMe(this)">Contact</li>
</ul>
function resizeNotMe(me) {
var listItems = document.getElementsByTagName('li');
for (var i = 0; i < listItems.length; i++) {
if (listItems[i] !== me) {
listItems[i].className = 'narrow';
} else {
listItems[i].className = '';
}
}
}
$('li').on('click', function() {
$(this).removeClass('narrow').siblings().addClass('narrow');
});