Optimizely에서 기본 jquery 클릭 이벤트가 작동하지 않습니다.
-
12-12-2019 - |
문제
Optimizely에서는 몇 가지 기본적인 클릭 이벤트를 수행하려고 합니다.Optimizely는 jquery 1.6에만 있다는 것을 알고 있으므로 다음을 사용하십시오. on()
, off()
이벤트에는 쓸모가 없습니다.확인하기 위해 가장 기본적인 이벤트 핸들러를 사용하고 있습니다. click(function(){ ... }));
, 그러나 이것조차도 작동하지 않습니다.window.$를 사용하라는 지시를 받았지만 click()
이 기술도 작동하지 않습니다.Optimizely의 jquery가 다른가요?
Optimizely와 jQuery 사이에 어떤 종류의 문제가 있다는 것을 알고 있지만 누군가 이에 대해 좀 알려줄 수 있습니까?
JS 스니펫:
(function(window.$) {
window.$.fn.tabbs = function(options) {
var settings = {
dir: 'top',
trigger: 'a',
target: '.tab-section',
selected: 'selected'
},
html = $('html');
window.alert('jquery object: ' + window.$);
if (html.hasClass('no-js')) {
html.removeClass('no-js').addClass('js');
} else {
html.addClass('js');
}
var classAction = function(obj, action, cls) {
window.$(obj)[action](cls);
};
window.$.extend(settings, options);
return this.each(function() {
var tabs = window.$(this),
tab = tabs.find(settings.trigger),
tabSection = window.$(settings.target),
tabsSystemContainer = tabs.closest('div');
switch(settings.dir) {
case 'left':
tabsSystemContainer.removeClass(settings.dir || 'top').addClass('left' || settings.dir);
break;
default:
tabsSystemContainer.removeClass('left' || settings.dir).addClass(settings.dir || 'top');
}
//this where I'm having problems
tab.click(function(e) {
var self = window.$(this);
e.preventDefault();
window.alert('Hello, inside tab click event...');
});
});
};
}(window.jQuery));
window.$('.tabs').tabbs();
많은 Thnaks
해결책
1행에 구문 오류가 있습니다.
(function(window.$) {
읽어야합니다
(function($) {
원하는 jQuery(>= 1.6)를 사용할 수 있습니다.원하는 것을 삽입하고 Optimizely의 설정 -> jQuery 설정에서 "프로젝트 코드에 jQuery를 포함하지 않음"을 선택하면 모든 것이 잘 작동합니다.하지만 Optimizely 스크립트 태그 앞에 자체 jQuery를 포함해야 합니다.
제휴하지 않습니다 StackOverflow