这是我的jQuery:
$('.portfoliopod').on('click', function(){
$('.portfoliopod').addClass('current');
});
和我的HTML:
<div class="portfoliopod">
<img class="portfolioimage" src="aboutme.jpg">
<div class="portfoliopodmessage">testing 123</div>
</div>
当我点击&#34;投资组合框&#34;课程&#34;当前&#34;没有添加。我错过了一些明显的东西吗?
答案 0 :(得分:1)
正如OP所说“点击一个按钮,portoflio是通过PHP加载的”,我假设投资组合内容是通过 AJAX 加载的。所以,你必须使用它来监听元素上的事件:
jQuery(document).on('click', '.portfoliopod', function(){
jQuery('.portfoliopod').addClass('current');
});
由于.portfoliopod
元素是动态创建的元素,因此您当前使用的代码不会将事件绑定到稍后将在DOM树中出现的元素。
因此,绑定侦听器的方法是将其绑定到document
并检查点击document
的元素是否为.portfoliopod
。请参阅this。
此外,似乎在您的网站上,$
未定义(非常奇怪)。因此,请改用jQuery
。
或者,如果您需要$
对象,请在})(window);
之前在jQuery文件的最末端添加此代码:
window.jQuery = window.$ = jQuery;
答案 1 :(得分:0)
使用此代码检查
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="portfoliopod">
<img class="portfolioimage" src="aboutme.jpg">
<div class="portfoliopodmessage">testing 123</div>
</div>
<script>
$('.portfoliopod').on('click', function(){
$('.portfoliopod').addClass('current');
});</script>
如果此代码有效,那么错误就是包含了jquery脚本。