请问一下如何用JS制作这种效果:按一下按钮,换一张图片。 50

 我来答
百度网友1c19aee
2017-06-21 · TA获得超过1966个赞
知道小有建树答主
回答量:691
采纳率:69%
帮助的人:282万
展开全部
挺复杂的程序:
using System;

using System.Web;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Web.SessionState;

public class WaterMark : IHttpHandler, IRequiresSessionState {

// 要使用session必须实现该接口需要导入System.Web.SessionState命名空间

public void ProcessRequest(HttpContext context)

{

string checkCode = GenCode(5); // 产生5位随机字符

context.Session["Code"] = checkCode; //将字符串保存到Session中,以便需要时进行验证

System.Drawing.Bitmap image = new System.Drawing.Bitmap(70, 22);

Graphics g = Graphics.FromImage(image);

try

{

//生成随机生成器

Random random = new Random();

//清空图片背景色

g.Clear(Color.White);

// 画图片的背景噪音线

int i;

for (i = 0; i < 25; i++)

{

int x1 = random.Next(image.Width);

int x2 = random.Next(image.Width);

int y1 = random.Next(image.Height);

int y2 = random.Next(image.Height);

g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2);

}

Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold));

System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2F, true);

g.DrawString(checkCode, font, brush, 2, 2);

//画图片的前景噪音点

g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1);

System.IO.MemoryStream ms = new System.IO.MemoryStream();

image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);

context.Response.ClearContent();

context.Response.ContentType = "image/Gif";

context.Response.BinaryWrite(ms.ToArray());

}

finally

{

g.Dispose();

image.Dispose();

}

}

/// <summary>

/// 产生随机字符串

/// </summary>

/// <param name="num">随机出几个字符</param>

/// <returns>随机出的字符串</returns>

private string GenCode(int num)

{

//根据需要产生的字符进行设置

string str = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

char[] chastr = str.ToCharArray();

string code = "";

Random rd = new Random();

int i;

for (i = 0; i < num; i++)

{
code += str.Substring(rd.Next(0, str.Length), 1);
}
return code;
}

public bool IsReusable

{
get

{
return false;
}
}
}

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<script language ="javascript" type ="text/javascript" >

function changeCode() {

var imgNode = document.getElementById("vimg");

imgNode.src = "handler/WaterMark.ashx?t=" + (new Date()).valueOf();}

</script>

</asp:Content>
简单的JS实现不了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式