无法使其工作(我可以不从列表标签内部进行JS调用吗?) 感谢!!!
<head>
<script type="text/javascript">
// Popup window code
function newPopup(url) {
popupWindow = window.open(
url,'popUpWindow','height=300,width=400,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
}
</script>
</head>
<body>
<ul>
<li><a href="helpingkidswhostruggle.html" target="popup" onclick="window.open('helpingkidswhostruggle.html','name','width=600,height=450')">Helping Kids Who Struggle</a>
</li>
</ul>
..etc
,,but works fine when not in <li>
Thanks!!!
答案 0 :(得分:0)
我建议您使用jquery库来解决此问题。为了使用jquery,您必须使用CDN或本地包含jquery文件。我使用CDN。
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
您可以设置jquery事件侦听器,以便在单击列表项后执行事件。例如;
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>List Click</title>
<!-- Include meta tag to ensure proper rendering and touch zooming -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Include the jQuery library -->
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
</head>
<body>
<ul id="group">
<li id="one">One</li>
<li id="two">Two</li>
<li id="three">Three</li>
<li id="four">Four</li>
<li id="five">Five</li>
</ul>
<script>
$( "#group li" ).bind( "click", function() {
var selected_item = $(this).attr('id');
if(selected_item == "one"){
window.open('helpingkidswhostruggle.html','name','width=600,height=450');
}
});
</script>
</body>
</html>
所以解释一下代码;
您必须为ul
和li
代码分配ID属性。
$( "#group li" ).bind( "click", function() {
代码查找标识为li
的列表项,其中包含id为group
的元素,并为其分配一个点击侦听器,以便在单击它们时,一个函数被调用并执行。
var selected_item = $(this).attr('id');
代码使用attr('id')
方法获取所点击列表项的ID,并将其分配给变量selected_item
。所以现在这是使用id
为列表项分配,以便您可以识别它们。
此if(selected_item == "one"){
代码当然会检查点击了哪个项目以及如果已执行的操作。你可以玩这个,看看哪个适合你。
不要忘记包含jquery文件,否则代码将无效。
尝试一下,让我知道它是否有帮助,或者如果您发现了问题