Javascript函数被执行两次

Javascript函数被执行两次,javascript,jquery,Javascript,Jquery,我有下一个代码,我正试图在屏幕上打印一些数据。 我面临的问题是,每个函数执行两次,因此console.log也会在我的控制台上出现两次 这件事真的很奇怪。 我的代码是这样的: 我尝试了使用window.onload执行此操作,还尝试了导入文档中的函数。ready 但是没有运气 如果有人能给我任何我做错了什么的暗示,那将是非常感激的 <body class="stretched"> <div id="wrapper" class=&

我有下一个代码,我正试图在屏幕上打印一些数据。 我面临的问题是,每个函数执行两次,因此
console.log
也会在我的控制台上出现两次

这件事真的很奇怪。 我的代码是这样的: 我尝试了使用
window.onload执行此操作,还尝试了导入
文档中的函数。ready
但是没有运气

如果有人能给我任何我做错了什么的暗示,那将是非常感激的

<body class="stretched">
    <div id="wrapper" class="clearfix">
        <!--Cargamos Layout de NavBar -->
        @Html.Partial("_NavBar_DataUser")
        <!--Fin de Carga -->
        <section id="carouselComercialTop" class="mt-auto">
            <div class="content-wrap">
                <!--Cargamos el caroussel stático -->
                @Html.Partial("_Layout_Caroussel")
            </div>

        </section>
        @Html.Partial("_Layout_Medicina360")

        <iframe class="pt-4" frameborder="0" width="100%" height="100%" src='#' name="zoom360" id="zoom360" style="display:none;"></iframe>
    </div>
    @Html.Partial("_Layout_DataUserFooter")
    <script type="text/javascript" src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
    <script type="text/javascript" src="/lib/slick-1.8.1/slick/slick.min.js"></script>
    <link rel="stylesheet" type="text/css" href="/lib/slick-1.8.1/slick/slick-theme.css" />
    <link rel="stylesheet" type="text/css" href="/lib/slick-1.8.1/slick/slick.css" />
</body>
    <script>
      window.ca_model = [];
      let stringJSONConsultaBuscador = ("@Context.Session.GetString("ConsultaBuscador")");
      window.ca_model = JSON.parse(stringJSONConsultaBuscador.replace(/&quot;/g, '"'));
      let especialistas = window.ca_model.listaEspecialistas;
      let especialista360varon = [];
      let especialista360mujer = [];
      let especialista360nino = [];
      let listaEspecialistas = window.ca_model.listaEspecialistas;
      let varon360 = listaEspecialistas.filter(b => b.hombres360 !== false);
      let mujer360 = listaEspecialistas.filter(b => b.mujeres360 !== false);
      let ninos360 = listaEspecialistas.filter(b => b.ninos360 !== false);

      especialista360varon.push(varon360);
      especialista360mujer.push(mujer360);
      especialista360nino.push(ninos360);

      especialista360varon = especialista360varon[0];
      especialista360mujer = especialista360mujer[0];
      especialista360nino = especialista360nino[0];

    function loadEspecialista360Varon(especialista360varon) {
        console.log(especialista360varon);
    }
    function loadEspecialista360Mujer(especialista360mujer) {
        console.log(especialista360mujer);
    }
    function loadEspecialista360Nino(especialista360nino) {
        console.log(especialista360nino);
    }

    window.onload = function () {
        loadEspecialista360Varon(especialista360varon);
        loadEspecialista360Mujer(especialista360mujer);
        loadEspecialista360Nino(especialista360nino);
    };
    $(document).ready(function () {
        let mobile = window.matchMedia('(max-width: 767px)').matches;
        let url = window.location.href;

        $('.link-carousel').each(function(){
            let href = $(this).attr("href");
            let container = $(this).parent().parent();
            if (url.indexOf(href) > -1){
                container.css({"background-color" : "rgb(173, 124, 177)"});
            }
        });

        let cuadroMedicoButton = document.getElementById("cuadroMedicoButton");
        cuadroMedicoButton.setAttribute("href", "/CuadroAsistencial/AsistenciaSpecialistas");
        if (mobile) {
            $('#mainRow').removeClass("d-flex");
            $('#mainCol').removeClass("d-flex");
            $('#containerMedicina360').replaceClass("py-5 py-2");
        }
    });
</script>

@Html.Partial(“\u NavBar\u DataUser”)
@Html.Partial(“\u Layout\u Caroussel”)
@Html.Partial(“\u Layout\u Medicina360”)
@Html.Partial(“\u布局\u数据用户页脚”)
window.ca_model=[];
让stringJSONConsultaBuscador=(“@Context.Session.GetString(“ConsultaBuscador”)”);
window.ca_model=JSON.parse(stringJSONConsultaBuscador.replace(/“/g,”);
让specialistas=window.ca_model.listeSpecialistas;
设specialista360varon=[];
让特别是360mujer=[];
让特别是尼诺=[];
让listaEspecialistas=window.ca_model.listaEspecialistas;
让varon360=listeSpecialistas.filter(b=>b.hombres360!==false);
让mujeres360=listeSpecialistas.filter(b=>b.mujeres360!==false);
让ninos360=listeSpecialistas.filter(b=>b.ninos360!==false);
特别是STA360Varon.push(varon360);
特别是STA360MUJER.push(mujer360);
特别是尼诺推(ninos360);
specialista360varon=specialista360varon[0];
specialista360mujer=specialista360mujer[0];
specialista360nino=specialista360nino[0];
函数加载Specialista360varon(Specialista360varon){
控制台日志(特别是STA360VARON);
}
函数加载Specialista360mujer(Specialista360mujer){
控制台日志(特别是STA360MUJER);
}
函数加载Specialista360Nino(Specialista360Nino){
控制台日志(特别是STA360NINO);
}
window.onload=函数(){
负荷专用STA360VARON(专用STA360VARON);
负荷特别是360MUJER(特别是360MUJER);
负荷特别是360Nino(特别是360Nino);
};
$(文档).ready(函数(){
让mobile=window.matchMedia('(最大宽度:767px')。匹配;
让url=window.location.href;
$('.link carousel')。每个(函数(){
让href=$(this.attr(“href”);
让容器=$(this.parent().parent();
如果(url.indexOf(href)>-1){
css({“背景色”:“rgb(173124177)”});
}
});
让cuadroMedicoButton=document.getElementById(“cuadroMedicoButton”);
setAttribute(“href”,“/CuadroAsistencial/AsistenciaSpecialistas”);
国际单项体育联合会(流动){
$('#mainRow').removeClass(“d-flex”);
$('mainCol').removeClass(“d-flex”);
$(“#containerMedicina360”).replaceClass(“py-5 py-2”);
}
});

答案的解决方案是删除
src='#'
从这里开始

    <iframe class="pt-4" frameborder="0" width="100%" height="100%" src='' name="zoom360" id="zoom360" style="display:none;"></iframe>


它在父窗口和同一iframe中加载相同的页面,这就是为什么它看起来像是被调用了两次的函数。

您能否缩小到重新创建问题所需的最小代码?可能会将您的数据转换为一个片段作为js变量(如果需要重新创建),这样我们就可以看到它工作了。这有助于诊断问题吗?这似乎是一种可能性: