Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.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 位置不变_Javascript_Jquery_Html - Fatal编程技术网

Javascript 位置不变

Javascript 位置不变,javascript,jquery,html,Javascript,Jquery,Html,我试着把一个球移到一边或另一边,这取决于它的位置,但是!不管我用什么方法来改变它的位置,它都不会改变 var $ancho = $(document).width(); var $posP = $("#portafolio").offset().left; var $porP = Math.floor($posP * 100 / $ancho); var porP保存div的portapolio位置的百分比 现在,portafolio的初始位置是13% if($porP == '13')

我试着把一个球移到一边或另一边,这取决于它的位置,但是!不管我用什么方法来改变它的位置,它都不会改变

var $ancho = $(document).width();
var $posP = $("#portafolio").offset().left;
var $porP = Math.floor($posP * 100 / $ancho);
var porP保存div的portapolio位置的百分比

现在,portafolio的初始位置是13%

if($porP == '13')
  {


    $("#portafolio").mouseenter(function(){
            $("#imge").stop().fadeTo('500', 0.3,  function() {});});

        $("#portafolio").mouseleave(function(){
            $("#imge").stop().fadeOut('500',  function() {});
            });

    $("#portafolio").click(function(){

      $("#portafolio").animate({
        left: "+=87%",}, 
        { queue: false, duration: 900, easing:'swing' }); 
         $("#imge").fadeTo('500', 0.3,  function() {

             });

        $(iframe).attr('src','portafolio.html');
        $("#marco").fadeTo('500', 1 ,  function() {});
         $(iframe).open();


      });


  }
但即使我向右移动portafolio,在动画函数中,porP变量仍然显示13,因此它永远不会到达else

else
  { move to the other side }
我已经尝试在click函数中为porP变量分配一个新值,但没有成功。它总是执行IF语句

有人知道为什么porP值不变吗?我怎样才能真正改变它,使else最终起作用呢? 我到处搜索,用我有限的jquery知识尝试了我脑海中出现的所有东西,但一无所获。求你了


edit//portapfolio是相对于其父contenido的相对定位div,父contenido是绝对定位的,左侧为20px。Portapolio剩下15%。我不知道这是否有什么关系。

爱丽丝,我不确定你到底想做什么,但是if和else语句可能应该在“click”处理程序中。大概

$("#portafolio").click(function(){

var $ancho = $(document).width();
var $posP = $("#portafolio").offset().left;
var $porP = Math.floor($posP * 100 / $ancho);

if($porP == '13')
{

  $("#portafolio").animate({
    left: "+=87%",}, 
    { queue: false, duration: 900, easing:'swing' }); 
     $("#imge").fadeTo('500', 0.3,  function() {

         });

    $(iframe).attr('src','portafolio.html');
    $("#marco").fadeTo('500', 1 ,  function() {});
     $(iframe).open();

}
else
{ move to the other side }

});

您是否尝试过提醒/控制台porP的价值,以确保您得到了所需的。是的,它总是给我13或从&posPAlice获得的任何价值,您尝试过我的建议吗?我对它进行了编辑,这样每次点击它都会更新$porP。