Jquery 优化变体代码

Jquery 优化变体代码,jquery,optimizely,Jquery,Optimizely,看看是否有人对我在Optimizely的变体代码部分中提供的使以下代码更干净的建议: window.scrollBox(); $("#related-posts").css({"z-index":"1"}); $("#optslidebox").replaceWith("<div id=\"optslidebox\" style=\"z-index: 2; right: -999px;\">\n\t<a class=\"close\"></a>\n\t<

看看是否有人对我在Optimizely的变体代码部分中提供的使以下代码更干净的建议:

window.scrollBox();
$("#related-posts").css({"z-index":"1"});
$("#optslidebox").replaceWith("<div id=\"optslidebox\" style=\"z-index: 2; right: -999px;\">\n\t<a class=\"close\"></a>\n\t<p>Recommended</p>\n\t<h2>WHO ARE YOUR FAVORITE RAPPERS' FAVORITE RAPPERS RIGHT NOW?</h2>\n</div>");
$("#optslidebox > h2").wrapInner("<a href=\"http://greenlabel.com/sound/rappers-who-skate-skaters-who-rap/\"></a>");
window.scrollBox();
$(“#相关帖子”).css({“z-index”:“1”});
$(“#optslidebox”)。替换为(“\n\t”);
这就是我想附加到正文中的内容(可以优化地编辑html,但它非常混乱):


我想知道如何将div存储到变量中,如果有意义的话,还可以存储optslidebox div中的项目。我还想知道如何实现所有变量,使它们显示在主体中


提前谢谢

您可以使用
html
而不是
replaceWith
,因为看起来您只是在替换
innerHtml
。我们喜欢用数组连接来清理它,但是

这样的图案看起来

/* _optimizely_evaluate=force */ /*global $*/
window.variationHtml = [
  '<a class="close"></a>',
  '<p>Recommended</p>',
  '<h2><a href="#">WHO ARE YOUR FAVORITE RAPPERS\' FAVORITE RAPPERS RIGHT NOW?</a></h2>',
].join('');
/* _optimizely_evaluate=safe */
$("#optslidebox").html(variationHtml);
/*\u优化\u评估=强制*/*全局$*/
window.variationHtml=[
'',
].加入(“”);
/*\u优化\u评估=安全*/
$(“#optslidebox”).html(variationHtml);
如果事情变得更激烈,尽管我们构建了一个多行模板函数,以帮助不需要对所有内容进行数组化

/* _optimizely_evaluate=force */ /*global $*/

// timpl | https://github.com/clearhead/timpl
!function(n){"use strict";function r(n){var r=i.exec(n.toString());if(!r)throw new TypeError("Multiline comment missing.");return r[1]}function t(n,r){return n.replace(c,function(n,t){for(var i=t.split("."),o=i.length,s=r,u=0;o>u;u++){if(s=s[i[u]],s===e)throw'tim: "'+i[u]+'" not found in '+n;if(u===o-1)return s}})}n.timpl=function(n,e){return t(n.call?r(n):n,e||{}).replace(/^\s+|\s+$/g,"")};var e,i=/\/\*!?(?:\@preserve)?[ \t]*(?:\r\n|\n)([\s\S]*?)(?:\r\n|\n)[ \t]*\*\//,o="{{",s="}}",u="[a-z0-9_$][\\.a-z0-9_]*",c=new RegExp(o+"\\s*("+u+")\\s*"+s,"gi")}(window);

window.variationHtml = timpl(function () { /*
  <a class="close"></a>
  <p>Recommended</p>
  <h2><a href="#">WHO ARE YOUR FAVORITE RAPPERS' FAVORITE RAPPERS RIGHT NOW?</a></h2>
*/});

/* _optimizely_evaluate=safe */
$("#optslidebox").replaceWith(window.variationHtml);
/*\u优化\u评估=强制*/*全局$*/
//timpl|https://github.com/clearhead/timpl
!函数(n){“使用严格”;函数r(n){var r=i.exec(n.toString());if(!r)抛出新类型错误(“多行注释丢失”);返回r[1]}函数t(n,r){return n.replace(c,函数(n,t){for(var i=t.split(“.”,o=i.length,s=r,u=0;o>u++){if(s=s[i[u]],s==e)抛出'tim:“'i[u]+'”;if(i[u]+=”未在'=n中找到;if(s)返回函数(t)}{(n.call?r(n):n,e |{}。替换(/^\s+\$/g,”);变量e,i=/\/\*?(?:\@preserve)[\t]*(?:\r\n | \n)([\s\s]*)(?:\r\n | \n[\t]*\*\/,o=“{,”,s=“”,u=“”,[a-z0-9][\\.a-exp u124\\\\\\+]n([\r\s]*”)([\s]*)(?:\r\n\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\;
window.variationHtml=timpl(函数(){/*
*/});
/*\u优化\u评估=安全*/
$(“#optslidebox”).replacetwith(window.variationHtml);

您可以使用jQuery通过
$optslideBox=$(“#optslideBox”)
将div完全存储在一个变量中,您甚至可以将其从
DOM
中删除,并将其放在另一个地方(在
body
中),非常感谢@TomFuertes!我现在就测试一下。
/* _optimizely_evaluate=force */ /*global $*/

// timpl | https://github.com/clearhead/timpl
!function(n){"use strict";function r(n){var r=i.exec(n.toString());if(!r)throw new TypeError("Multiline comment missing.");return r[1]}function t(n,r){return n.replace(c,function(n,t){for(var i=t.split("."),o=i.length,s=r,u=0;o>u;u++){if(s=s[i[u]],s===e)throw'tim: "'+i[u]+'" not found in '+n;if(u===o-1)return s}})}n.timpl=function(n,e){return t(n.call?r(n):n,e||{}).replace(/^\s+|\s+$/g,"")};var e,i=/\/\*!?(?:\@preserve)?[ \t]*(?:\r\n|\n)([\s\S]*?)(?:\r\n|\n)[ \t]*\*\//,o="{{",s="}}",u="[a-z0-9_$][\\.a-z0-9_]*",c=new RegExp(o+"\\s*("+u+")\\s*"+s,"gi")}(window);

window.variationHtml = timpl(function () { /*
  <a class="close"></a>
  <p>Recommended</p>
  <h2><a href="#">WHO ARE YOUR FAVORITE RAPPERS' FAVORITE RAPPERS RIGHT NOW?</a></h2>
*/});

/* _optimizely_evaluate=safe */
$("#optslidebox").replaceWith(window.variationHtml);