首页技术html5登录界面完整代码(html下载链接代码怎么写)

html5登录界面完整代码(html下载链接代码怎么写)

编程之家2026-06-28623次浏览

其实html5登录界面完整代码的问题并不复杂,但是又很多的朋友都不太了解html下载链接代码怎么写,因此呢,今天小编就来为大家分享html5登录界面完整代码的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

html5登录界面完整代码(html下载链接代码怎么写)

如何利用html5开发android界面

三种解决方式:1 viewport属性 2 CSS控制 3 JS控制

1 viewport属性放在HTML的<meta>中

<SPAN style="FONT-SIZE: x-small"><head>

<title>Exmaple</title>

<meta name=”viewport” content=”width=device-width,user-scalable=no”/>

</head></SPAN>

html5登录界面完整代码(html下载链接代码怎么写)

meta中viewport的属性如下

<SPAN style="FONT-SIZE: x-small"><meta name="viewport"

content="

height= [pixel_value| device-height],

width= [pixel_value| device-width ],

initial-scale= float_value,

html5登录界面完整代码(html下载链接代码怎么写)

minimum-scale= float_value,

maximum-scale= float_value,

user-scalable= [yes| no],

target-densitydpi= [dpi_value| device-dpi|

high-dpi| medium-dpi| low-dpi]

"

/></SPAN>

2 CSS控制设备密度

为每种密度创建独立的样式表(注意其中的webkit-device-pixel-ratio 3个数值对应3种分辨率)

<link rel="stylesheet" media="screen and(-webkit-device-pixel-ratio: 1.5)" rel="external nofollow" href="hdpi.css"/>

<link rel="stylesheet" media="screen and(-webkit-device-pixel-ratio: 1.0)" rel="external nofollow" href="mdpi.css"/>

<link rel="stylesheet" media="screen and(-webkit-device-pixel-ratio: 0.75)" rel="external nofollow" href="ldpi.css"/>

在一个样式表中,指定不同的样式

WebView myWebView=(WebView) findViewById(R.id.webview);

myWebView.setWebViewClient(new MyWebViewClient());

另外出于用户习惯上的考虑需要将WebView表现得更像一个浏览器,也就是需要可以回退历史记录

因此需要覆盖系统的回退键 goBack,goForward可向前向后浏览历史页面

Java代码

public boolean onKeyDown(int keyCode, KeyEvent event){

if((keyCode== KeyEvent.KEYCODE_BACK)&& myWebView.canGoBack(){

myWebView.goBack();

return true;

}

return super.onKeyDown(keyCode, event);

}

//处理javascript中的confirm

public boolean onJsConfirm(WebView view, String url, String message, final JsResult result){

Builder builder= new Builder(MainActivity.this);

builder.setTitle("confirm");

builder.setMessage(message);

builder.setPositiveButton(android.R.string.ok,

new AlertDialog.OnClickListener(){

public void onClick(DialogInterface dialog, int which){

result.confirm();

}

});

builder.setNegativeButton(android.R.string.cancel,

new DialogInterface.OnClickListener(){

public void onClick(DialogInterface dialog, int which){

result.cancel();

}

});

builder.setCancelable(false);

builder.create();

builder.show();

return true;

};

@Override

//设置网页加载的进度条

public void onProgressChanged(WebView view, int newProgress){

MainActivity.this.getWindow().setFeatureInt(Window.FEATURE_PROGRESS, newProgress* 100);

super.onProgressChanged(view, newProgress);

}

//设置应用程序的标题title

public void onReceivedTitle(WebView view, String title){

MainActivity.this.setTitle(title);

super.onReceivedTitle(view, title);

}

});

● Android中的调试

通过JS代码输出log信息

Js代码

Js代码: console.log("Hello World");

Log信息: Console: Hello World

在WebChromeClient中实现onConsoleMesaage()回调方法,让其在LogCat中打印信息

Java代码复制代码收藏代码

WebView myWebView=(WebView) findViewById(R.id.webview);

myWebView.setWebChromeClient(new WebChromeClient(){

public void onConsoleMessage(String message, int lineNumber, String sourceID){

Log.d("MyApplication", message+"-- From line"

+ lineNumber+" of"

+ sourceID);

}

});

以及

Java代码

WebView myWebView=(WebView) findViewById(R.id.webview);

myWebView.setWebChromeClient(new WebChromeClient(){

public boolean onConsoleMessage(ConsoleMessage cm){

Log.d("MyApplication", cm.message()+"-- From line"

+ cm.lineNumber()+" of"

+ cm.sourceId());

return true;

}

});

*ConsoleMessage还包括一个 MessageLevel表示控制台传递信息类型。您可以用messageLevel()查询信息级别,以确定信息的严重程度,然后使用适当的Log方法或采取其他适当的措施。

● HTML5本地存储在Android中的应用

HTML5提供了2种客户端存储数据新方法:

localStorage没有时间限制

sessionStorage针对一个Session的数据存储

Js代码

<script type="text/javascript">

localStorage.lastname="Smith";

document.write(localStorage.lastname);

</script>

<script type="text/javascript">

sessionStorage.lastname="Smith";

document.write(sessionStorage.lastname);

</script>

WebStorage的API:

//清空storage

localStorage.clear();

//设置一个键值

localStorage.setItem(“yarin”,“yangfegnsheng”);

//获取一个键值

localStorage.getItem(“yarin”);

//获取指定下标的键的名称(如同Array)

localStorage.key(0);

//return“fresh”//删除一个键值

localStorage.removeItem(“yarin”);

注意一定要在设置中开启哦

setDomStorageEnabled(true)

在Android中进行操作

//启用数据库

webSettings.setDatabaseEnabled(true);

String dir= this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath();

//设置数据库路径

webSettings.setDatabasePath(dir);

//使用localStorage则必须打开

webSettings.setDomStorageEnabled(true);

//扩充数据库的容量(在WebChromeClinet中实现)

public void onExceededDatabaseQuota(String url, String databaseIdentifier, long currentQuota,

long estimatedSize, long totalUsedQuota, WebStorage.QuotaUpdater quotaUpdater){

quotaUpdater.updateQuota(estimatedSize* 2);

}

在JS中按常规进行数据库操作

function initDatabase(){

try{

if(!window.openDatabase){

alert('Databases are not supported by your browser');

} else{

var shortName='YARINDB';

var version='1.0';

var displayName='yarin db';

var maxSize= 100000;// in bytes

YARINDB= openDatabase(shortName, version, displayName, maxSize);

createTables();

selectAll();

}

} catch(e){

if(e== 2){

// Version mismatch.

console.log("Invalid database version.");

} else{

console.log("Unknown error"+ e+".");

}

return;

}

}

function createTables(){

YARINDB.transaction(

function(transaction){

transaction.executeSql('CREATE TABLE IF NOT EXISTS yarin(id INTEGER NOT NULL PRIMARY KEY, name TEXT NOT NULL,desc TEXT NOT NULL);', [], nullDataHandler, errorHandler);

}

);

insertData();

}

function insertData(){

YARINDB.transaction(

function(transaction){

//Starter data when page is initialized

var data= ['1','yarin yang','I am yarin'];

transaction.executeSql("INSERT INTO yarin(id, name, desc) VALUES(?,?,?)", [data[0], data[1], data[2]]);

}

);

}

function errorHandler(transaction, error){

if(error.code==1){

// DB Table already exists

} else{

// Error is a human-readable string.

console.log('Oops. Error was'+error.message+'(Code'+error.code+')');

}

return false;

}

function nullDataHandler(){

console.log("SQL Query Succeeded");

}

function selectAll(){

YARINDB.transaction(

function(transaction){

transaction.executeSql("SELECT* FROM yarin;", [], dataSelectHandler, errorHandler);

}

);

}

function dataSelectHandler(transaction, results){

// Handle the results

for(var i=0; i<results.rows.length; i++){

var row= results.rows.item(i);

var newFeature= new Object();

newFeature.name= row['name'];

newFeature.decs= row['desc'];

document.getElementByIdx_x_x_x("name").innerHTML="name:"+newFeature.name;

document.getElementByIdx_x_x_x("desc").innerHTML="desc:"+newFeature.decs;

}

}

function updateData(){

YARINDB.transaction(

function(transaction){

var data= ['fengsheng yang','I am fengsheng'];

transaction.executeSql("UPDATE yarin SET name=?, desc=? WHERE id= 1", [data[0], data[1]]);

}

);

selectAll();

}

function ddeleteTables(){

YARINDB.transaction(

function(transaction){

transaction.executeSql("DROP TABLE yarin;", [], nullDataHandler, errorHandler);

}

);

console.log("Table'page_settings' has been dropped.");

}

注意onLoad中的初始化工作

function initLocalStorage(){

if(window.localStorage){

textarea.addEventListener("keyup", function(){

window.localStorage["value"]= this.value;

window.localStorage["time"]= new Date().getTime();

}, false);

} else{

alert("LocalStorage are not supported in this browser.");

}

}

window.onload= function(){

initDatabase();

initLocalStorage();

}

● HTML5地理位置服务在Android中的应用

//启用地理定位

webSettings.setGeolocationEnabled(true);

//设置定位的数据库路径

webSettings.setGeolocationDatabasePath(dir);

//配置权限(同样在WebChromeClient中实现)

public void onGeolocationPermissionsShowPrompt(String origin,

GeolocationPermissions.Callback callback){

callback.invoke(origin, true, false);

super.onGeolocationPermissionsShowPrompt(origin, callback);

}

HTML5中通过navigator.geolocation对象获取地理位置信息

常用的navigator.geolocation对象有以下三种方法:

Js代码

//获取当前地理位置

navigator.geolocation.getCurrentPosition(success_callback_function, error_callback_function, position_options)

//持续获取地理位置

navigator.geolocation.watchPosition(success_callback_function, error_callback_function, position_options)

//清除持续获取地理位置事件

navigator.geolocation.clearWatch(watch_position_id)

其中success_callback_function为成功之后处理的函数,error_callback_function为失败之后返回的处理函数,参数position_options是配置项

//定位

function get_location(){

if(navigator.geolocation){

navigator.geolocation.getCurrentPosition(show_map,handle_error,{enableHighAccuracy:false,maximumAge:1000,timeout:15000});

} else{

alert("Your browser does not support HTML5 geoLocation");

}

}

html5设计王者荣耀主界面

《王者荣耀》是由腾讯游戏开发并运行的一款运营在Android、IOS平台上的MOBA类手机游戏,于2015年11月26日在Android、IOS平台上正式公测,游戏前期使用名称有《英雄战迹》、《王者联盟》。《Arena

Of

Valor》,即《王者荣耀》的欧美版本于2018年在任天堂Switch平台发售。[1]游戏是类dota手游,游戏中的玩法以竞技对战为主,玩家之间进行1V1、3V3、5V5等多种方式的PVP对战,还可以参加游戏的冒险模式,进行PVE的闯关模式,在满足条件后可以参加游戏排位赛等

如何自定义 Cocos2d-html5 Loading 界面

自定义 Cocos2d-html5 Loading界面的方法:

自定义一个 Loader.js文件,实现 Loader类,完成自定义Loading界面的具体实现,可以参考LoaderScene的实现,在其上修改扩充,它完成了修改 Logo图片,并添加了一个简单的精度条,是加载过程更为一目了然,这里并没有多么炫的效果,只是自定义一个 Loading界面源码如下:

Loading= cc.Scene.extend(

_logo: null,

_logoTexture: null,

_texture2d: null,

_bgLayer: null,

_label: null,

_winSize:null,

_processLayer: null,//相比 LoaderScene的实现,添加了两个属性,标示进度条层和进度条长度

_processLayerLength: null,

//构造函数

ctor: function(){

this._super();

this._winSize= cc.Director.getInstance().getWinSize();

},

init:function(){

cc.Scene.prototype.init.call(this);

// logo图片和 label的添加..这里省略,于 LoaderScene同样

//设置进度条层,它就是一个红色颜色层,通过长度来标示加载的进度

this._processLayerLength= 500;

this._processLayer= cc.LayerColor.create(cc.c4b(255, 100, 100, 128), 1, 30);

this._processLayer.setPosition(cc.pAdd(centerPos, cc.p(- this._processLayerLength/ 2,-logoHeight/ 2- 50)));

//可以启用锚点,并设置以满足自己的需要

// this._processLayer.ignoreAnchorPointForPosition(false);

// this._processLayer.setAnchorPoint(cc.p(0, 0));

this._bgLayer.addChild(this._processLayer);

}

实现LoaderScene方法:

Loading.preload= function(resources, selector, target){

if(!this._instance){

//创建一个 Loading

this._instance= new Loading();

this._instance.init();

}

//...

return this._instance;

};

运行效果:

关于html5登录界面完整代码到此分享完毕,希望能帮助到您。

strcpy函数怎么用 strcpy函数用法举例if函数的使用方法python,python中if语句的用法