将event.target更改为新位置(url)而不是新类

时间:2017-09-04 13:36:57

标签: javascript event-handling

如何让事件更改网址而不是使用event.target添加类?

代码:

auto dummy(std::function<int(int)> ifunc) {
  auto vals = std::vector<int>(1000000);
  auto&& target = *ifunc.target<int(int)>();
  for(auto& v: vals) {
    v = target(v);
  }
}

如果我点击并按住带有上面代码的div框,它将改变颜色(添加一个新类)但是如果我想要它改为例如。网址:www.google.com而不是..

我该如何实现呢。

我尝试过改变:

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>taphold demo</title>
  <link rel="stylesheet" href="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
  <script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
  <script src="//code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
  <style>
  html, body { padding: 0; margin: 0; }
  html, .ui-mobile, .ui-mobile body {
    height: 85px;
  }
  .ui-mobile, .ui-mobile .ui-page {
    min-height: 85px;
  }
  #nav {
    font-size: 200%;
    width:17.1875em;
    margin:17px auto 0 auto;
  }
  #nav a {
    color: #777;
    border: 2px solid #777;
    background-color: #ccc;
    padding: 0.2em 0.6em;
    text-decoration: none;
    float: left;
    margin-right: 0.3em;
  }
  #nav a:hover {
    color: #999;
    border-color: #999;
    background: #eee;
  }
  #nav a.selected,
  #nav a.selected:hover {
    color: #0a0;
    border-color: #0a0;
    background: #afa;
  }
  div.box {
    width: 3em;
    height: 3em;
    background-color: #108040;
  }
  div.box.taphold {
    background-color: #7ACEF4;
  }
  </style>
</head>
<body>

<h3>Long press the square for 750 milliseconds to see the above code applied:</h3>
<div class="box">Link</div>

<script>
$(function(){
  $( "div.box" ).bind( "taphold", tapholdHandler );

  function tapholdHandler( event ){
    $( event.target ).addClass( "taphold" );
  }
});
</script>

</body>
</html>

为:

$( event.target ).addClass( "taphold" );

但这不起作用。

有人帮忙吗? : - )

1 个答案:

答案 0 :(得分:0)

只需更改您的功能即可导航到您选择的网址。您无需使用event

  function tapholdHandler() {
    window.location.href='http://www.google.com';
  }