frontpack/cookie-consent 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

frontpack/cookie-consent

Composer 安装命令:

composer require frontpack/cookie-consent

包简介

Cookie consent bar

README 文档

README

Cookie consent bar

Buy me a coffee

Installation

Download a latest package or use Composer:

composer require frontpack/cookie-consent

Usage

On begin of page:

window.dataLayer = window.dataLayer || [];
window.gtag = window.gtag || function () { window.dataLayer.push(arguments); }
const CookieConsent = new FrontpackCookieConsent('storageKey-cc', function (consent) {
	consent.setDefaults({functional: true});
	const status = consent.getGCMValue('analytics');
	gtag('consent', 'default', {
		analytics_storage: status,
		personalization_storage: status,
		ad_storage: status,
		ads_data_redaction: status === 'granted' ? 'false' : 'true',
		wait_for_update: 500
	});
	dataLayer.push({event: 'default_consent'});
	dataLayer.push({event: 'consentSettingsUpdated'});
}, function (consent) {
	const status = consent.getGCMValue('analytics');
	gtag('consent', 'update', {
		analytics_storage: status,
		personalization_storage: status,
		ad_storage: status,
		ads_data_redaction: status === 'granted' ? 'false' : 'true',
		wait_for_update: 500
	});
	dataLayer.push({event: 'consentSettingsUpdated'});
});

Cookie bar

HTML:

<div class="cookie-bar" role="dialog" aria-describedby="cookie-bar__description">
	<div class="cookie-bar__description" id="cookie-bar__description">
		Description

		<a href="/privacy">Link</a>
	</div>

	<div class="cookie-bar__category cookie-bar__category--disabled">
		<label for="cookie-bar__category--functional">
			<div class="cookie-bar__checkbox">
				<input id="cookie-bar__category--functional" tabindex="0" data-cookie-bar-category="functional" checked disabled type="checkbox" value="1">
				<span class="cookie-bar__checkbox-round"></span>
			</div>
			<span class="cookie-bar__category-label">Functional</span>
		</label>
	</div>

	<div class="cookie-bar__category">
		<label for="cookie-bar__category--analytics">
			<div class="cookie-bar__checkbox">
				<input id="cookie-bar__category--analytics" tabindex="0" data-cookie-bar-category="analytics" type="checkbox" value="0">
				<span class="cookie-bar__checkbox-round"></span>
			</div>
			<span class="cookie-bar__category-label">Analytics</span>
		</label>
	</div>

	<div class="cookie-bar__buttons">
		<button class="cookie-bar__button cookie-bar__button--accept">Accept</button>
		<button class="cookie-bar__button cookie-bar__button--dismiss">Dismiss</button>
		<button class="cookie-bar__button cookie-bar__button--settings">Settings</button>
		<button class="cookie-bar__button cookie-bar__button--save">Save</button>
	</div>
</div>

JS (in page footer):

const bem = new LucyBem(document);
const cookieBar = new FrontpackCookieBar(bem, cookieConsent);
cookieBar.tryOpen();

License: New BSD License
Author: Jan Pecha, https://www.janpecha.cz/

统计信息

  • 总下载量: 12
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: JavaScript

其他信息

  • 授权协议: BSD-3-Clause
  • 更新时间: 2022-01-03

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固