Как сократить код и стоит ли это делать для целей в метрике?
как сократить код?
$(".copy_header_mail").bind('copy', function() {
ym(666777888, 'reachGoal', 'copy-header-email');
return true;
});
$(".copy_header_phone").bind('copy', function() {
ym(666777888, 'reachGoal', 'copy-header-phone');
return true;
});
$(".copy_footer_mail").bind('copy', function() {
ym(666777888, 'reachGoal', 'copy-footer-email');
return true;
});
$(".copy_footer_phone").bind('copy', function() {
ym(666777888, 'reachGoal', 'copy-footer-phone');
return true;
});
Ответы (1 шт):
Автор решения: ksa
→ Ссылка
как сократить код?
Например можно сделать вот так...
const fn = (s1, s2) => {
const s = s2 ?? s1
$(s1).bind('copy', function() {
ym(666777888, 'reachGoal', s);
return true;
});
}
fn('.copy_header_mail', 'copy-header-email')
fn('.copy_header_phone')
fn('.copy_footer_mail', 'copy-footer-email')
fn('.copy_footer_phone')
Или вообще вот так...
[
['.copy_header_mail', 'copy-header-email']
['.copy_header_phone']
['.copy_footer_mail', 'copy-footer-email']
['.copy_footer_phone']
].forEach(a => {
$(a[0]).bind('copy', function() {
ym(666777888, 'reachGoal', a[1] ?? a[0]);
return true;
});
})