Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript window.location在新选项卡中打开_Javascript_Tabs_Window.open_Window.location - Fatal编程技术网

Javascript window.location在新选项卡中打开

Javascript window.location在新选项卡中打开,javascript,tabs,window.open,window.location,Javascript,Tabs,Window.open,Window.location,我希望能够在新选项卡中打开链接,但我不确定要做哪些更改才能使其正常工作。我在这里看到了关于窗口的其他问题。打开,但我在这段代码中没有这个问题,只有窗口。位置。我已将唯一的实例更改为window.open,但此时链接不起作用。我想我可能必须更改链接部分以接受窗口.location,但我不确定如何更改 <head> <script type='text/javascript'> function carousel(params){ if(!(params.width>0

我希望能够在新选项卡中打开链接,但我不确定要做哪些更改才能使其正常工作。我在这里看到了关于
窗口的其他问题。打开
,但我在这段代码中没有这个问题,只有
窗口。位置
。我已将唯一的实例更改为window.open,但此时链接不起作用。我想我可能必须更改链接部分以接受
窗口.location
,但我不确定如何更改

<head>
<script type='text/javascript'>
function carousel(params){
if(!(params.width>0&&isFinite(params.width)))params.width=100;
if(!(params.height>0&&isFinite(params.height)))params.height=100;
if(!(params.sides>2&&isFinite(params.sides)))params.sides=4;
if(!(params.steps>0&&params.steps<100&&isFinite(params.steps)))params.steps=20;
if(!(params.speed>0&&isFinite(params.speed)))params.speed=8;
if(!      (params.image_border_width>=0&&isFinite(params.image_border_width)))params.image_border_width=0;
if(isFinite(params.id)||!params.id)params.id='bad_id_given_'+Math.random();

document.write("<div style='position:relative;overflow:hidden;' id='"+params.id.replace(/[\r\n\t ]+/g,'_')+"'></div>");
var cdiv=document.getElementById(params.id.replace(/[\r\n\t ]+/g,'_'))
cdiv.style.width=params.width+'px';
cdiv.style.height=params.height+'px';
cdiv.style.border=params.border;
cdiv.style.position='relative';
cdiv.style.overflow='hidden';
cdiv.title=params.id;

var counter=0,spinning=true,interval=Math.floor(60000/params.sides/params.steps/params.speed)-5;
interval=isNaN(interval)?200:interval;
var img_position=[],images=[],img_dimension=[];
var img_index=params.images.length+1,img_index_cap=2*params.images.length;
var faces=Math.ceil(params.sides/2), dimension, direction;

function init(){
if(params.direction=="left" || params.direction=="right"){
  direction=params.direction;
  dimension="width";
  }
else if(params.direction=="top" || params.direction=="bottom"){
  direction=params.direction;
  dimension="height";
  }
else {
  direction="left";
  dimension="width";
  }      
cdiv.style[dimension]=params[dimension]/(params.size_mode=='image'?Math.sin(Math.PI/params.sides):1)+'px';
var img=new Image();
img.style.position='absolute';
img.style[direction]='10000px';
img.style.width=params.width-2*params.image_border_width+'px';
img.style.height=params.height-2*params.image_border_width+'px';
img.style.border=(params.image_border_width||0)+'px solid '+params.image_border_color;

for(var i=0;i<params.images.length;i++){
  images[i]=img.cloneNode(true);
  images[i].src=params.images[i];
  if(params.links&&params.links[i]&&params.links[i]!=''){
    images[i].onclick=new Function("window.location='"+params.links[i]+"'");
    images[i].style.cursor=document.all?'hand':'pointer';
    }
  if(params.titles&&params.titles[i]&&params.titles[i]!='')
    images[i].title=params.titles[i];
  images[i+params.images.length]=images[i];
  if(params.images.length==faces)
    images[i+2*params.images.length]=images[i];
  cdiv.appendChild(images[i]);
  }

var face_size=params.size_mode=='image'?params[dimension]:params[dimension]*Math.sin(Math.PI/params.sides);
var face_offset=params[dimension]*Math.cos(Math.PI/params.sides)/(params.size_mode=='image'?Math.sin(Math.PI/params.sides):1)/2-.5;
var pi_piece=2*Math.PI/params.steps/params.sides;
for(i=0;i<=params.steps*faces;i++){
  img_dimension[i]=face_size*Math.sin(pi_piece*i);
  img_position[i]=(i<params.steps*params.sides/2)?Math.floor(params[dimension]/2/(params.size_mode=='image'?Math.sin(Math.PI/params.sides):1)-face_offset*Math.cos(pi_piece*i)-img_dimension[i]/2)+'px':'10000px';
  img_dimension[i]=img_dimension[i]-2*params.image_border_width>1?Math.ceil(img_dimension[i])-2*params.image_border_width+'px':'1px';
  }
}
init();

cdiv.rotate = function(){
setTimeout('document.getElementById("'+cdiv.id+'").rotate()',interval);
if(!spinning) return;
if(++counter>=params.steps){
  counter=0;
  if(++img_index>=img_index_cap)
    img_index=params.images.length;
  }
images[img_index-faces].style[direction]='20000px';
for(var i=faces-1;i>=0;i--){
  images[img_index-i].style[direction]=img_position[counter+i*params.steps];
  images[img_index-i].style[dimension]=img_dimension[counter+i*params.steps];
  }
}
cdiv.onmouseover=function(){
spinning=false;
}
cdiv.onmouseout=function(){
spinning=true;
}
setTimeout('document.getElementById("'+cdiv.id+'").rotate()',200);
}
</script>
</head>

功能转盘(参数){
如果(!(参数宽度>0&&isFinite(参数宽度)),参数宽度=100;
如果(!(参数高度>0&&isFinite(参数高度)),参数高度=100;
如果(!(参数边>2&&isFinite(参数边)),参数边=4;
如果(!(参数步数>0&¶ms.steps0&&isFinite(参数速度)))参数速度=8;
如果(!(参数图像边框宽度>=0&&isFinite(参数图像边框宽度)),参数图像边框宽度=0;
if(isFinite(params.id)| |!params.id)params.id='bad_id_given.'+Math.random();
文件。填写(“”);
var cdiv=document.getElementById(params.id.replace(/[\r\n\t]+/g,'''''u'))
cdiv.style.width=参数width+'px';
cdiv.style.height=参数height+'px';
cdiv.style.border=params.border;
cdiv.style.position='relative';
cdiv.style.overflow='hidden';
cdiv.title=params.id;
变量计数器=0,旋转=true,间隔=Math.floor(60000/参数边/参数步数/参数速度)-5;
间隔=isNaN(间隔)?200:间隔;
变量img_位置=[],图像=[],img_维度=[];
var img_index=params.images.length+1,img_index_cap=2*params.images.length;
变量面=数学单元(参数面/2)、尺寸、方向;
函数init(){
如果(参数方向==“左”| |参数方向==“右”){
方向=参数方向;
dimension=“宽度”;
}
else if(参数方向==“顶部”| |参数方向==“底部”){
方向=参数方向;
尺寸=“高度”;
}
否则{
方向=“左”;
dimension=“宽度”;
}      
cdiv.style[dimension]=params[dimension]/(params.size_mode=='image'?Math.sin(Math.PI/params.sides):1)+'px';
var img=新图像();
img.style.position='absolute';
图像样式[方向]='10000px';
img.style.width=params.width-2*params.image_border_width+'px';
img.style.height=params.height-2*params.image_border_width+'px';
img.style.border=(params.image_border_width|124; 0)+“px solid”+params.image_border_color;
对于(var i=0;i=img_指数_上限)
img_index=params.images.length;
}
图像[img_索引面].样式[方向]='20000px';
对于(变量i=faces-1;i>=0;i--){
图像[img_index-i]。样式[direction]=img_位置[counter+i*参数步骤];
图像[img_index-i].style[dimension]=img_dimension[counter+i*params.steps];
}
}
cdiv.onmouseover=函数(){
旋转=假;
}
cdiv.onmouseout=函数(){
旋转=真;
}
setTimeout('document.getElementById(“+cdiv.id+”).rotate()”,200);
}
然后在体内:

<script type='text/javascript'>
carousel({id:'YOUR_ID_HERE',
      border:'',
      size_mode:'image',
      width:138,
      height:225,
      sides:11,
      steps:44,
      speed:2,
      direction:'left',
      images:['https://genericlink.com/image1.jpg',
              'https://genericlink.com/image2.jpg',
              'https://genericlink.com/image3.jpg',
              'https://genericlink.com/image4.jpg',
              'https://genericlink.com/image5.jpg',
              'https://genericlink.com/image6.jpg',
              'https://genericlink.com/image7.jpg',
              'https://genericlink.com/image8.jpg',
              'https://genericlink.com/image9.jpg',
              'https://genericlink.com/image10.jpg'],
      links: ['https://genericlink.com/page1',
              'https://genericlink.com/page2',
              'https://genericlink.com/page3',
              'https://genericlink.com/page4',
              'https://genericlink.com/page5',
              'https://genericlink.com/page6',
              'https://genericlink.com/page7',
              'https://genericlink.com/page8',
              'https://genericlink.com/page9',
              'https://genericlink.com/page10'],
      titles:['1',
              '2',
              '3',
              '4',
              '5',
              '6',
              '7',
              '8',
              '9',
              '10'],
      image_border_width:1,
      image_border_color:'#ffffff'
      });
</script>

旋转木马({id:'YOUR_id_此处',
边界:“”,
大小_模式:'image',
宽度:138,
身高:225,
双方:11,
步骤:44,
速度:2,,
方向:'左',
图片:['https://genericlink.com/image1.jpg',
'https://genericlink.com/image2.jpg',
'https://genericlink.com/image3.jpg',
'https://genericlink.com/image4.jpg',
'https://genericlink.com/image5.jpg',
'https://genericlink.com/image6.jpg',
'https://genericlink.com/image7.jpg',
'https://genericlink.com/image8.jpg',
'https://genericlink.com/image9.jpg',
'https://genericlink.com/image10.jpg'],
链接:['https://genericlink.com/page1',
'https://genericlink.com/page2',
'https://genericlink.com/page3',
'https://genericlink.com/page4',
'https://genericlink.com/page5',
'https://genericlink.com/page6',
'https://genericlink.com/page7',
'https://genericlink.com/page8',
'https://genericlink.com/page9',
'https://genericlink.com/page10'],
标题:['1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9',
'10'],
图像\边框\宽度:1,
图像_边框_颜色:'#ffffff'
});

您不能将
窗口.位置
替换为
窗口.打开
。它的语法略有不同

尝试替换:

images[i].onclick=new Function("window.location='"+params.links[i]+"'");
与:


请不要误会,因为您甚至不了解自己的代码,并希望我们理解它?它打开了一个新选项卡,但<代码>file:///C:/Users/xxxxx2/Desktop/+params.links[i]+这就是输出,我没有找到一个页面。我在示例中使用了错误的引号。如果您刚刚复制并粘贴了它,请使用我的编辑.images[i].onclick=new函数(“window.open”(“+params.links[i]+”)重试;
images[i].onclick=new Function("window.open("'+params.links[i]+'")");