① 通过js判断当前访问的是电脑还是手机
<scripttype="text/javascript">
varbForcepc
=fGetQuery("dv")=="pc";
function
fBrowserRedirect(){
varsUserAgent=navigator.userAgent.toLowerCase();
varbIsIpad=sUserAgent.match(/ipad/i)==
"ipad";
varbIsiphoneOs=sUserAgent.match(/iphoneos/i)=="iphoneos";
varbIsMidp=sUserAgent.match(/midp/i)=="midp";
varbIsUc7=sUserAgent.match(/rv:1.2.3.4/i)=="rv:1.2.3.4";
varbIsUc=sUserAgent.match(/ucweb/i)=="ucweb";
varbIsAndroid=sUserAgent.match(/android/i)=="android";
varbIsCE=sUserAgent.match(/windowsce/i)=="windowsce";
varbIsWM=sUserAgent.match(/windowsmobile/i)=="windows
mobile";
if(bIsIpad){
varsUrl=
location.href;
if(!bForcepc){
window.location.href="http://ipad.mail.163.com/";
}
}
if(bIsIphoneOs||bIsAndroid){
varsUrl=
location.href;
if(!bForcepc){
window.location.href="http://smart.mail.163.com/";
}
}
if(bIsMidp||bIsUc7||bIsUc||bIsCE||bIsWM){
varsUrl=
location.href;
if(!bForcepc){
window.location.href="http://m.mail.163.com/";
}
}
}
function
fGetQuery(name){//获取参数值
varsUrl=window.location.search.substr(1);
varr=sUrl.match(newRegExp("(^|&)"+name+
"=([^&]*)(&|$)"));
return(r==null?null:(r[2]));
}
function
fShowVerBlock(){
if(bForcepc){
document.getElementByIdx_x("dv_block").style.display="block";
}
else{
document.getElementByIdx_x("ad_block").style.display="block";
}
}
fBrowserRedirect();
</script>
这只是弱判断,用户通过F12或者浏览器设置是可以改的,并不能代表用户真实情况
② JS判断用户是否登陆登陆
我认为你是想用AJAX来实现,
var i=1;
function listNews(user,password)
{
var xmlHttp1 = null;
requestNewsNum=requestNum;
var keyword = escape(escape(n_keyword));
var str = "'"+user+"','"+password+"'";
i = requestNum;
switch(requestNum){
case 1:
startRequest("需要调用方法的路径和名字"+str,1);
break;
}
}
function createXMLHttpRequest(i) {
if(window.XMLHttpRequest) {
eval( 'xmlHttp'+i+"=new XMLHttpRequest()");
}else if(window.ActiveXObject) {
eval( 'xmlHttp'+i+"=new ActiveXObject('Microsoft.XMLHTTP')");
}
}
function startRequest(url,i) {
createXMLHttpRequest(i);
eval( "("+'xmlHttp'+i+")"+".onreadystatechange = "+function(){
if(eval( "("+'xmlHttp'+i+")"+".readyState==4")){
if(eval( "("+'xmlHttp'+i+")"+".status==200")) {
document.getElementById("DIV的名字(显示的地方)"+i).innerHTML = eval( "("+'xmlHttp'+i+")"+".responseText");
}
}
});
eval( "("+'xmlHttp'+i+")"+".open('GET',url,true)");
eval( "("+'xmlHttp'+i+")"+".send(null)");
}
这是整个AJAX的框架.
③ nodejs判断用户是否有权限访问某个页面
功能 :判断当前用户是否有权限访问当页面
思路:读取当前用户的权限(在登陆验证是设置的)
和标签在jsp页面取到的值进行比较,不匹配时跳转到指定页面
总结:标签类一般存放在web-inf/lib
xxxx.tld 配置 标签类的参数定义和指定类名
web-inf.xml 指定xxxx.tld的位置和定义名字
<mytag:CheckPower power="manager" gotoPage="login.jsp"/>
错误总结:写标签类的时候get/set方法漏了 ,报错。
写jsp页面时ctrl c ctrl v时 uri没改,页面不认。
④ 前端js 怎么判断用户是否安装了某APP,安装了不直接打开这个应用而是进行其他操作
判断当前页面是否在app内部打开,单纯的web前端还不能解决
需要客户端对userAgent添加自己app相关的字段
(useragent设置Android:http://www.jincon.com/archives/354/)
(useragent设置IOS:http://www.jianshu.com/p/5f02451b8e87)
var userAgent = navigator.userAgent.toLowerCase(), //获取userAgent
isInapp = userAgent.indexOf("sunyuki")>=0;//查询是否有相关app的相关字段
希望对你有帮助!
⑤ js如何判断用户行为动态添加input属性
<inputtype="text">
<script>
document.querySelector('input[type="text"]').oninput=function(e){
constvalue=e.target.value;
if(value.trim()){
e.target.setAttribute('linyu','active');
}else{
e.target.removeAttribute('linyu');
}
}
</script>
通过 input 事件来实现。输入框更改的时候触发。
⑥ js 判断是否登录
如果一定要用js验证是否登录,那么,就需要使用cookie记录登录状态,js可以读取进行判断。
//JS操作cookies方法!
//写cookies
functionsetCookie(name,value)
{
varDays=30;
varexp=newDate();
exp.setTime(exp.getTime()+Days*24*60*60*1000);
document.cookie=name+"="+escape(value)+";expires="+exp.toGMTString();
}
//读取cookies
functiongetCookie(name)
{
vararr,reg=newRegExp("(^|)"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))returnunescape(arr[2]);
elsereturnnull;
}
//删除cookies
functiondelCookie(name)
{
varexp=newDate();
exp.setTime(exp.getTime()-1);
varcval=getCookie(name);
if(cval!=null)document.cookie=name+"="+cval+";expires="+exp.toGMTString();
}
//使用示例
setCookie("name","hayden");
alert(getCookie("name"));