我想通过导航菜单将动态页面加载到iframe中,如果我选择菜单选项FAQ
,iframe会将faq.php
页面定位到src
属性,依此类推。
如何将菜单页面动态分配到下面?
Jquery的:
<script type="text/javascript">
$(document).ready(function() {
$("#mainFrame").attr("src", "faq.php");
});
</script>
<div class="content">
<div class="left">
<ul id="menu">
<li><a href="#">Banking</a></li>
<li><a href="#">How To Join</a></li>
<li><a href="#">FAQ</a></li>
<li><a href="#">Contact Us</a></li>
<li><a href="#">Help</a>
<ul>
<li><a href="#">Subscribe</a></li>
<li><a href="#">Recipe</a></li>
</ul>
</li>
<li><a href="#">Terms & Conditions</a></li>
</ul>
</div>
<div class="right">
<div>Title</div>
<div><iframe src="" frameborder="0" id="mainFrame" name="mainFrame"></iframe></div>
</div>
</div>
请指教,谢谢。
答案 0 :(得分:4)
我建议您为所有链接使用一个类,并使用数据属性传递要在iframe中加载的文件的名称:
<li><a class="anchor" data-url="faq.php" href="#">FAQ</a></li>
<li><a class="anchor" data-url="about.php" href="#">Contact Us</a></li>
<li><a class="anchor" data-url="help.php" href="#">Help</a>
<ul>
<li><a class="anchor" data-url="subscribe.php" href="#">Subscribe</a></li>
<li><a class="anchor" data-url="recipe.php" href="#">Recipe</a></li>
</ul>
</li>
<li><a class="anchor" data-url="term.php" href="#">Terms & Conditions</a></li>
然后,您可以使用jQuery动态加载iframe的内容:
$(".anchor").each(function(){
var el = $(this);
el.click(function() {
$("#mainFrame").attr("src", el.data('url'));
})
})
的 Working Demo 强>
答案 1 :(得分:3)
就是这样:
<body>
<div class="content">
<div class="left">
<ul id="menu">
<li><a href="#">Banking</a></li>
<li><a href="#">How To Join</a></li>
<li><a href="#" id="faq">FAQ</a></li>
<li><a href="#">Contact Us</a></li>
<li><a href="#">Help</a>
<ul>
<li><a href="#">Subscribe</a></li>
<li><a href="#">Recipe</a></li>
</ul>
</li>
<li><a href="#">Terms & Conditions</a></li>
</ul>
</div>
<div class="right">
<div>Title</div>
<div><iframe src="" frameborder="0" id="mainFrame" name="mainFrame"></iframe></div>
</div>
</div>
</body>
<script type="text/javascript">
$("#faq").click(function () {
$("#mainFrame").attr("src", "faq.php");
});
</script>