Jas*_*per 0 html javascript jquery
我正在尝试使用我的jQuery代码中的对象.
我几乎是这样的:
var opts = {
ul: $(this).find('.carousel'),
li: ul.find('li')
}
Run Code Online (Sandbox Code Playgroud)
li 属性给出错误 Cannot call method 'find' of undefined
怎么修好?
phe*_*nal 11
选择器是什么并不重要,当你声明它时,你无法访问你声明的对象的属性.
为什么会ul被宣布?你正在对象ul上制作一个属性opts.
你可能想要的是:
var opts = {
ul: $(this).find('.carousel')
}
opts.li = opts.ul.find('li');
Run Code Online (Sandbox Code Playgroud)
但是如果你实际上不需要引用这两个组,那么:
var opts = {
li: $(this).find('.carousel li')
}
Run Code Online (Sandbox Code Playgroud)
同样好.
你也可以这样做:
var $carousel = $(this).find('.carousel');
var options = {
carousel: $carousel,
carouselItems: $carousel.find('li')
}
Run Code Online (Sandbox Code Playgroud)
var CarouselOptions = (function () {
var options = function (carousel) {
this.carousel = $(carousel);
this.carouselItems = this.carousel.find('li');
};
options.prototype.myOptionsFunction = function () {
// Don't know what you want your object to do, but you wanted a prototype...
};
return options;
})();
var opts = new CarouselOptions($(this).find('.carousel'));
Run Code Online (Sandbox Code Playgroud)
(小心你的this是什么,大概你.carousel在页面上有多个元素,在这里你想要一个在事件目标范围内的元素.)
| 归档时间: |
|
| 查看次数: |
2691 次 |
| 最近记录: |