使用 Optimizely 替换多个页面上的 class
Replacing a class on multiple pages with Optimizely
我正在尝试使用 Optimizely 设置 A/B 测试,以更改站点上所有产品页面上添加到购物车按钮的颜色。
这是网站上的当前代码
<input id="id-for-test" class="add_to_cart_list" value="Add to Cart" name="Add to Cart" type="button"
onclick='sendToDataLayer("Category Lower", "Add to cart");return cat_add_one_to_cart( "<?= $p["id"] ?>", "<?= $param_sku ?>", "<?= $output_price ?>", "<?= $path ?>", "<?= $can_buy_limit ?>" ,"<?=$this_page_type?>")'/>
我正在 Optimizely 代码编辑器中添加它,但它不起作用
$('#id-for-test').removeClass('add_to_cart_list').addClass('color-test');
给每个购物车 input
元素一个共同的 class 例如 cart-class
:
<input id="id-for-test" class="cart-class add_to_cart_list" value="Add to Cart" name="Add to Cart" type="button"
onclick='sendToDataLayer("Category Lower", "Add to cart");return cat_add_one_to_cart( "<?= $p["id"] ?>", "<?= $param_sku ?>", "<?= $output_price ?>", "<?= $path ?>", "<?= $can_buy_limit ?>" ,"<?=$this_page_type?>")'/>
然后根据class查询而不是ID:
$('.cart-class').removeClass('add_to_cart_list').addClass('color-test');
ID 应该是唯一的,因此查询在找到第一个实例后就停止查找。使用 class 以便将更改应用于所有实例。
我认为这应该可以解决问题:
$('input.add_to_cart_list').removeClass('add_to_cart_list').addClass('color-test');
我正在尝试使用 Optimizely 设置 A/B 测试,以更改站点上所有产品页面上添加到购物车按钮的颜色。
这是网站上的当前代码
<input id="id-for-test" class="add_to_cart_list" value="Add to Cart" name="Add to Cart" type="button"
onclick='sendToDataLayer("Category Lower", "Add to cart");return cat_add_one_to_cart( "<?= $p["id"] ?>", "<?= $param_sku ?>", "<?= $output_price ?>", "<?= $path ?>", "<?= $can_buy_limit ?>" ,"<?=$this_page_type?>")'/>
我正在 Optimizely 代码编辑器中添加它,但它不起作用
$('#id-for-test').removeClass('add_to_cart_list').addClass('color-test');
给每个购物车 input
元素一个共同的 class 例如 cart-class
:
<input id="id-for-test" class="cart-class add_to_cart_list" value="Add to Cart" name="Add to Cart" type="button"
onclick='sendToDataLayer("Category Lower", "Add to cart");return cat_add_one_to_cart( "<?= $p["id"] ?>", "<?= $param_sku ?>", "<?= $output_price ?>", "<?= $path ?>", "<?= $can_buy_limit ?>" ,"<?=$this_page_type?>")'/>
然后根据class查询而不是ID:
$('.cart-class').removeClass('add_to_cart_list').addClass('color-test');
ID 应该是唯一的,因此查询在找到第一个实例后就停止查找。使用 class 以便将更改应用于所有实例。
我认为这应该可以解决问题:
$('input.add_to_cart_list').removeClass('add_to_cart_list').addClass('color-test');