相关疑难解决方法(0)

使用.click()而不是内联onclick

我一直采用内联onclick方法:

<a href="#" id="do-something" onclick="doSomething(<?= $row['id'] ?>); return false;">
Run Code Online (Sandbox Code Playgroud)

但我注意到这不是大多数网站所做的.他们倾向于这样做:

<a href="#" id="do-something">

$("#do-something").click(function(e) {
    e.preventDefault();
    doSomething();
    // --------^
})
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,如何获得我在示例一中提供的参数,以便我可以在示例二中使用它?什么是正确的过程?也许添加一些隐藏的div?

jquery events

3
推荐指数
1
解决办法
61
查看次数

Click事件函数执行两次

我对这段代码的结果感到困惑.在我看来,当内容$("#title")为"hello"并获得一次点击时,它会执行函数saygoodbye()并添加一个新的click-event匿名函数.它获得外部警报.当内容"再见"并获得单击时,这两个函数都应该执行.它应该获得一个外部警报和一个内部警报.

但实际上,我得到一个外部警报和两个内部警报.另一个内心警报来自哪里?

var count = 0;
function saygoodbye(){
  alert("ok is outer");
  $("#title").html("goodbye");
  $("#title").click(function() {
    alert("ok is inner");
    $('#title').html("hello");
    $('#title').off("click");
  });
}
Run Code Online (Sandbox Code Playgroud)
<script src="//code.jquery.com/jquery-2.1.4.min.js" type="text/javascript"></script>

<h1 id="title" onclick="saygoodbye();">hello</h1>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

3
推荐指数
1
解决办法
170
查看次数

单击链接时,javascript函数不起作用

我有一个相当简单的页面,其中包含侧边栏导航和用于加载内容的iFrame.

我想通过单击侧栏导航中的链接来更改iFrame的内容.我正在使用javascript来更改document.element的源(.src).

我已经阅读了很多文章(StackOverflow)并且代码应该可以工作,但事实并非如此.

下面的代码是我创建的html页面,它包含标签中的JS.

<head>
<meta charset="UTF-8">
<title>Untitled Document</title>
<link href="css/default.css" rel="stylesheet" type="text/css">

<script type="text/javascript">
    function getContent{

        document.getElementById("contentFrame").src="LoremIpsum.html";  

    }
    </script>


</head>

<body>
<div class="sidebar"><h1>Technical Documentation</h1>
<ul>
    <li>Configuration Guides</li>
    <li>API Guides</li>
    <li><a href="" onclick='getContent()'> LoremIpsum</a></li>
</ul>
<!-- <button onclick="getContent()">Lorem Ipsum</button>    -->

</div>


<iframe class="content"  id="contentFrame" src="dummy.html">
</iframe>

</body>
Run Code Online (Sandbox Code Playgroud)

html javascript iframe

3
推荐指数
2
解决办法
2443
查看次数

触发按钮单击javascript吗?

这是我的button代码:

<button class="popup-trigger" data-modal="modal-1"></button>
Run Code Online (Sandbox Code Playgroud)

我该如何触发按钮单击甚至popup-trigger使用数据模式触发类modal-1

想知道纯JavaScript,如果你做不到,那么jQuery。谢谢

html javascript jquery

2
推荐指数
1
解决办法
2万
查看次数

使用"this"与javascript和Jquery

我试图简化一些tic tac toe游戏的代码.

网格的每个扇区都有"tictactoe"类和一个指定其区域的id,例如"upleft".我的想法是,onclick在html元素中,将调用一个JavaScript函数,该函数将在该空间中显示一个X.

所以这就是我所拥有的:

HTML元素:

<td id="upleft" onclick="displayX()" class="tictactoe"></td>
Run Code Online (Sandbox Code Playgroud)

JavaScript/JQuery函数:

                 function displayX()
                {
                        $('#upleft').text("x");
                }
Run Code Online (Sandbox Code Playgroud)

基本上我想将函数更改为使用"this"而不是"#upleft"

但是当我这样做时:

                function displayX()
                {
                        $(this).text("x");
                }
Run Code Online (Sandbox Code Playgroud)

没有显示文本是指定为upleft的网格.首先,"this"函数是否将代码放入指定的id中?其次,我该如何解决这个问题呢?

javascript jquery this

0
推荐指数
1
解决办法
172
查看次数

为什么定时器会自动启动?

在我点击触发计时器的按钮之前,我已经启动了一个正在运行的计时器.小提琴.HTML:

<div id="worked">25:00</div>
<button type="button" onclick="update();">Start</button>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

var $worked = $("#worked");

function update() {
    var myTime = $worked.html();
    var ss = myTime.split(":");
    var dt = new Date();
    dt.setHours(0);
    dt.setMinutes(ss[0]);
    dt.setSeconds(ss[1]);

    var dt2 = new Date(dt.valueOf() - 1000);
    var temp = dt2.toTimeString().split(" ");
    var ts = temp[0].split(":");

    $worked.html(ts[1]+":"+ts[2]);
    if (ts[1]==0 && ts[2]==0){
        return 0;
    }
    else{
        setTimeout(update, 1000);
    }
}
setTimeout(update, 1000);
Run Code Online (Sandbox Code Playgroud)

javascript

-2
推荐指数
1
解决办法
90
查看次数

标签 统计

javascript ×5

jquery ×4

html ×2

events ×1

iframe ×1

this ×1