我已经阅读了其他帖子,但我仍然不确定为什么我的代码不能工作。我正在寻找一个id为featured#的元素来删除。
$('.model-gallery-image').click(function(){
featured_remove($(this).attr('data-model-id'));
});
function featured_remove(model_num){
console.log('Remove Featured Image: #featured-' + model_num);
$('#featured-' + model_num).remove();
}我已将model_num登录到控制台,以验证该号码是否已通过。
下面是我通过浏览器检查html标记时的样子。
<img src="model-gallery/37eafefa4964d985cb6f2e3bda07458c9b0728f5.jpg" id="featured-6">我不确定我错过了什么。
发布于 2015-01-20 22:54:35
您的脚本可能是在元素实际存在之前被调用的,您应该检查一下,否则我不知道会出什么问题
发布于 2015-01-20 23:03:34
在您的函数中,featured_remove()是未定义的,因为它在上下文之外。
传递一个参数以使用外部函数:
//define your function
var featured_remove = function (model_num){
console.log('Remove Featured Image: #featured-' + model_num);
$('#featured-' + model_num).remove();
}
//using closure
$('.model-gallery-image').click(function(featured_remove){//pass variable here
featured_remove($(this).attr('data-model-id'));
});https://stackoverflow.com/questions/28048275
复制相似问题