Cookie代码在firefox中失败

时间:2016-01-01 07:49:40

标签: javascript jquery firefox cookies

我在网站皮肤中使用此代码。这项工作目前在Chrome中,但在Firefox中不起作用。我使用//previous date $start = (new DateTime('2013-12-02'))->modify('first day of this month'); // current date $end = (new DateTime('2015-12-06'))->modify('first day of this month'); $interval = DateInterval::createFromDateString('1 month'); $period = new DatePeriod($start, $interval, $end); foreach ($period as $dt) { echo $dt->format("m/Y") . "<br>\n"; } 框架来保存cookie中的css文件名。

cookie.js

当我执行此代码时

//create  and set cookies for colors
var skinFileName = Cookies.get('skin_file').toString();
//if don't exist cookie for style Load Default stlye
if (skinFileName=="") {
  $('#color_skin').attr('href', '/DNN_test/Portals/_default/Skins/Crew/css/style.css');
} else {
  $('#color_skin').attr('href', '/DNN_test/Portals/_default/Skins/Crew/css/' + skinFileName + '.css');
}

//change colors of skin
var colors = $('#colour-variations ul li a');
colors.on('click', function () {
  var dataTem = $(this).data('theme');
  $('#color_skin').attr('href', '/DNN_test/Portals/_default/Skins/Crew/css/' + dataTem + '.css');
  Cookies.set('skin_file', dataTem.toString(), { expires: 60, path: '' });
});
在控制台中

但是当我执行此代码时

$('#color_skin').attr('href', '/DNN_test/Portals/_default/Skins/Crew/css/pink.css');)  

我收到此错误:var skinFileName = Cookies.get('skin_file').toString();

1 个答案:

答案 0 :(得分:1)

问题似乎与where Id = @_id 有关。当你第一次运行时它不会获取cookie,如果你在它上面调用Cookies.get('skin_file').toString();它会抛出一个toString。所以您可以尝试删除undefined...

这是我试过的一个小提琴。我已经改变了元素的id,但目标是相同的

toString();

WORKING DEMO

希望这会有用