0

您好,感谢您的宝贵时间!

我正在尝试为类别设置按钮,当单击时加载该类别在 vis Contained div 中的第一项。然后加载的 div 数据中的“下一个”和“上一个”按钮切换到该类别中的其他项目。

到目前为止,我有:

php:

<nav>
    <button onclick="changeContent('content1')">content1</button>
</nav>
<section id="main">
    <div id="visContainer"><div>
    </div>
</section

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="/js/jquery.min.js"><\/script>')</script>
<script src="js/javascript.js"></script>

js:

    $(function(){
        function changeContent(content){
            $('#visContainer').load('divList.html' content);
    };
});

以及一个 divList.html 文件,其中列出了不同的 div(现在填充 w 文本)。我在 js 的函数 changeContent 行上得到一个“意外标识符”,它一直说 changeContent 没有定义(单击按钮时)。我认为这可能与我的声明或 jQuery 有关,但我不知道在哪里。我是新手,所以任何帮助将不胜感激!

4

1 回答 1

1
$(function(){ ... });

该函数创建了一个新范围,使changeContent您的内联事件处理程序所在的窗口范围不可用。快速修复将是:

$(function(){
    window.changeContent = function(content){
        $('#visContainer').load('divList.html' content);
    }
});

更好的解决方案是删除内联事件处理程序。

<button id="myButton">content1</button>

和JS:

$(function(){
    $('myButton').on('click', function() {
        $('#visContainer').load('divList.html #content1');
    });
});
于 2013-04-02T18:34:14.200 回答