[英]How to hide and show a <div> onclick when there's already an action for click?
我已經嘗試了很多方法,但是似乎沒有任何效果。
我想隱藏<div id="disqus_thread">
,並在評論加載時單擊“ 評論 ”鏈接來顯示它(該鏈接在我博客的文章底部:“ commentaires ”) )。
我有一個與onclick
的鏈接,但無法添加其他操作。
如何設法使兩個動作都觸發點擊?
CSS:
#disqus_thread {display:none; margin-top: -40px; background: #fff;
background: #fff;
padding:20px;
border: 1px solid #ddd;}
我試圖使用CSS隱藏div,但是當時我不知道如何顯示它。
HTML:
<li class='commenting'>
<span class=''>
<a class='' expr:href='data:post.addCommentUrl' onclick='$.ajaxSetup({cache:true});$.getScript("http://julienlussiez.disqus.com/embed.js");$.ajaxSetup({cache:false});$("#disqus_loader").remove();' title='Laisser un commentaire'>Commentaires</a>
</span>
</li>
有一個onclick
函數,但是我什么也不能添加。
這是不正確的,還是寫得不好?
腳本:
<script>
function load_disqus()
{
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = "http://julienlussiez.disqus.com/embed.js";
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
var ldr = document.getElementById('disqus_loader');
ldr.parentNode.removeChild(ldr);
}
</script>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
$.Ajaxify.pageChange(function() {
var disqus_shortname = 'julienlussiez';
// required: replace example with your forum shortname
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();});
</script>
<a name="bottom"></a>
該腳本無需中斷即可從Disqus加載注釋。 很好,因為我的博客上有音樂播放器。
不幸的是,您只能為該元素分配一個單擊功能。
要使其工作,請嘗試將您的函數堆疊到新函數中,然后通過javascript將其分配給onclick
:
HTML:
<div id='test'></div>
JS:
var div = document.getElementById('test');
div.onclick = function () { alert("some function") };
// hides the div
div.onclick = stackFunction(div.onclick, function () {
div.style.display = "none";
});
function stackFunction(last, f) {
return function () { last(); f(); };
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.