如何从javascript添加行获取网址?

时间:2014-02-04 07:26:45

标签: javascript html css web childbrowser

当我点击该div时,我想要打开一个子浏览器,我有一个div。我有子浏览器的代码,但当我点击它时,它执行javascript行,我没有从那里得到任何URL。 请检查我的代码

Div代码

  <div class="box_padding " onClick="window.open(this.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes);return false;" id="column-c-box-1" >

  <script type="text/javascript"  src="http://ad.leadboltads.net/show_app_ad.js?section_id=838333320"></script>

  </div>

当我尝试这件事时没有发生任何事情。

所以我尝试了另一种方法来解决这个问题

  function openwindow(){
            w=open("myurl",'windowname','width=600,height=250,scrollbars,resizable,toolbar,status');
            with(w.document){
                write("<body>");
                write("This is a new window");
                write("</body>");
            }
            return false;
        }

HTML:

<div class="box_padding "onClick="openwindow();" id="column-c-box-1" >
 <script type="text/javascript"  src="http://ad.leadboltads.net/show_app_ad.js?section_id=838333320"></script>
</div>

这也行不通。

2 个答案:

答案 0 :(得分:1)

如果你有jquery可用,你可以使用它来代替this.href:

$('script').attr('src');

function openwindow(){
            w=open($(this).find('script').attr('src'),'windowname','width=600,height=250,scrollbars,resizable,toolbar,status');
            with(w.document){
                write("<body>");
                write("This is a new window");
                write("</body>");
            }
            return false;
        }

答案 1 :(得分:1)

这似乎适用于初步测试,本机javascript。正如之前的一张海报所示,这对于jquery来说是微不足道的。

将URL用作div标签“srcVal”中的参数。

<div class="box_padding " srcVal="http://ad.leadboltads.net/show_app_ad.js?section_id=838333320"  onClick="openwindow()" id="column-c-box-1">click me</div>

或者这样:

<div class="box_padding "onClick="openwindow();" id="column-c-box-1" >
 <script type="text/javascript"  src="http://ad.leadboltads.net/show_app_ad.js?section_id=838333320" id="scriptTag"></script>
</div>

您的功能略有修改:

function openwindow(){
    var id = document.getElementById("column-c-box-1").getAttribute("srcVal");  
    //or
    // var scr = document.getElementsByTagName('script');
    //var id = scr[0].src; // use scr[scr - 1].src if have multiple scripts
               var w=open(id,'windowname','width=600,height=250,scrollbars,resizable,toolbar,status');
                with(w.document){
                    write("<body>");
                    write("This is a new window");
                    write("</body>");
                }
                return false;
            }

我使用“with”,因为这是在您的原始代码中,但我谨慎对待它。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/with?redirectlocale=en-US&redirectslug=JavaScript%2FReference%2FStatements%2Fwith