[英]how to use jQuery click function with javascript OnClick
我要使用:
$(“ ...”)。animate()
加载onClick
JavaScript Ajax。 但是有一些问题:
我尝试像这样使用jQuery:
function Ajaxrequest(){
var xmlHttp;try{xmlHttp=new XMLHttpRequest();return xmlHttp;}
catch (e){
try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
return xmlHttp;
}
catch (e){
try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
return xmlHttp;}
catch (e){
alert("Browser Not support Ajax");
return false;}
}
}
function showtopic(str) {
$("html,body").animate({
scrollTop: jQuery(document).height()
}, 2000);
var xmlHttp = Ajaxrequest();
var issolve = "<a href=\'#topic\' title=\'دادن امتیاز\' class=\"fade\" id=\'solved\' onclick=\"showbest('faq.php?like=2lkha96slh','solved' , 'notsolved')\">+1 مشکلم حل شد</a><a href=\"http://my-bb.ir\" id=\"notsolved\" class=\"fade\" title=\"پرسیدن سوال\" target=\"_blank\" >نبابا حل نشد ! میخوام سوال بپرسم</a></li><br/><br/>";
if (str == "") {
document.getElementById("showtopic").innerHTML = "";
return;
}
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState > 0 && xmlHttp.readyState < 4) {
document.getElementById("tftopic").innerHTML = loadingmessage;
}
if (xmlHttp.readyState == 4) {
document.getElementById("showtopic").innerHTML = xmlHttp.responseText;
document.getElementById("issolved").innerHTML = issolve;
}
}
xmlHttp.open("GET", str, true);
xmlHttp.send();
}
但这没用!
然后,我做了这样的jQuery内联代码:
jQuery('.go-bott').click(function () {
$('html,body').animate({
scrollTop: (jQuery(document).height() * 0.9)
}, 2000);
return false;
});
并在JavaScript onClick
旁边使用它,但是Ajax不允许jQuery运行(此代码将在一个简单的类上运行)。
如何使用带有jQuery滚动的onClick
JavaScript Ajax 或可以使用JavaScript滚动页面?
提前致谢
为了更加安全,您应该执行以下操作:
在您的回调函数中:
if (xmlHttp.readyState > 0 && xmlHttp.readyState < 4) { document.getElementById("tftopic").innerHTML = loadingmessage; } else if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { document.getElementById("showtopic").innerHTML = xmlHttp.responseText; document.getElementById("issolved").innerHTML = issolve; } else { // do your error handling here }
您可以优化一些代码以使用更多的jQuery:
您可以使用jQuery设置元素的innerHTML而不是使用document.getElementById(“ element-name”)。innerHTML ='string':
$('#element-name').html('string'); // or jQuery(...).html(...)
您可以编写$(...)而不是jQuery(...),从而节省了一些键入操作:)(在使用jQuery.noConflict()时不要使用)
<div id="some-element" onclick="showtopic('your-attribute')"></div>
将scrollTop设置为大于零的数字时,请使用“ px”。
scrollTop: (jQuery(document).height() * 0.9) + 'px'
看来您不太了解jQuery与JavaScript的关系。 JavaScript是一种编程语言 。 jQuery是一个用JavaScript编写的库或插件 。 因此,jQuery内联代码= JavaScript内联代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.