首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在javascript中调用src

在javascript中调用src
EN

Stack Overflow用户
提问于 2018-09-26 07:04:00
回答 2查看 154关注 0票数 0

我试图让一个小部件工作,但我需要在页面加载后调用我的src,以便我的函数有时间运行,现在我有问题,我不能让它工作。我所需要的就是能够在函数完成后调用src。我附上了我的代码,抱歉太乱了,这是我第一次编码。

代码语言:javascript
复制
<script>
  var hi = "3911 e Douglas loop"
  var src1 
  function init() {
    window.onmessage = (event) => {
      hi = event.data;
      src1 = "//www.narrpr.com/widgets/avm-widget/widget.ashx/script"
      injectScript("//www.narrpr.com/widgets/avm-widget/widget.ashx/script")
    }
  }

  var rprAvmWidgetOptions = {
    Token: "742980EF-52EE-46F2-AEFB",
    Query: hi,
    CoBrandCode: "btso48",
    ShowRprLinks: false
  }

  function injectScript(src) {
    return new Promise((resolve, reject) => {
      const script = document.createElement('script');
      script.async = true;
      script.src = src;
      script.addEventListener('load', resolve);
      script.addEventListener('error', () => reject('Error loading script.'));
      script.addEventListener('abort', () => reject('Script loading 
 aborted.'));
      document.head.appendChild(script);
    });
  }
</script>
<script src = src1 > </script>
<body onload="init();" style="background-color:transpartnt;">

这是我实际需要的所有代码,除了,它没有,因为src锁得太快,所以我的函数不能运行并获取全局变量并将其分配给rprAvmWidgetOptions变量。

代码语言:javascript
复制
 <head>
 <script>
 var hi = "3919 e douglas loop"
  function init() {
    window.onmessage = (event) => {
      hi = event.data;
    }
  }

  var rprAvmWidgetOptions = {
    Token: "742980EF-52EE-46F2-AEFB",
    Query: hi,
    CoBrandCode: "btso48",
    ShowRprLinks: false
  }
</script>
</head>

<script src = "//www.narrpr.com/widgets/avm-widget/widget.ashx/script" > 
</script>
<body onload="init();" style="background-color:transpartnt;">

因此,我需要稍后加载src,然后我的函数将分配"hi“变量,一切都将正常工作。所以我需要一些延迟。如果我能从HTML内部调用src,那就太好了。

EN

回答 2

Stack Overflow用户

发布于 2018-09-26 07:44:20

您在head中放置script了吗?最好将它放在正文的末尾,这样就可以先加载HTML元素,然后再执行脚本。

票数 0
EN

Stack Overflow用户

发布于 2018-09-26 07:14:35

尝试在代码片段中运行您的代码可能会有所帮助。

您可以通过单击<>图标在StackOverFlow上制作代码片段。

例如,下面是一个简单的HTML和JavaScript代码片段:

代码语言:javascript
复制
console.log('hello, javascript')
代码语言:javascript
复制
<div>
Hello, HTML
<div>

请注意,您的HTML src应该指向一个用引号括起来的字符串。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52507722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档