我的 html 中有三个锚标记链接,ID 为“switcher”、“switcher-b”、“switcher-c”,当单击锚标记“switcher”时,我想从我的服务器上的 html 页面加载内容“内容.html”,锚点“switcher-b”将加载“content-b.html”,“switcher-c”将加载“content-c.html”。我还有一个锚标记 ID“默认”,单击时将重置/卸载 html 页面。
我认为 switch 语句将是完成我的任务的最佳方式,但它不起作用......我不精通 jQuery/JavaScript,但我想学习,所以如果任何具有中级或高级知识的 JavaScript/jQuery 开发人员可以识别我在我的 jQuery 语法中做错了什么,并提出了一个带有解释的解决方案,我真的会很感激。
感谢您查看我的帖子和您的帮助。
<!-- HTML code -->
<html>
</head>
<body>
<h1>AJAX Calls with jQuery load()</h1>
<div id="switcher">
<p><a id="switcher" href="#">Click here to fetch HTML content</a></p>
<p><a id="switcher-b" href="#">Click here to fetch HTML content</a></p>
<p><a id="switcher-c" href="#">Click here to fetch HTML content</a></p>
<p><a id="default" href="#">Reset</a></p>
</div>
<div id="result"></div>
</body></html>
<!-- jQuery Code -->
$(function(){
$('#switcher a').click(function(event){
var bodyClass = this.id.split('-')[1];
$('body').removeClass().addClass('bodyClass');
switch(bodyClass){
case 'switcher':
$('#result').load('content.html #content');
break;
case 'switcher-b':
$('#result').load('content-b.html #content');
break;
case 'switcher-c':
$('#result').load('content-c.html #content');
break;
default:
$('#result').unload();
}
return false;
});
});
</script>