saber 酱的抱枕

Fly me to the moon

10/11
2014
学习

在网页上引用了百度地图,那么问题来了

百度地图生成器里创建了一个地图,然后引入到网页。似乎一切都很正常

但是在chrome中,插入了百度地图的页面,所有元素都无法被选中了(快捷键ctrl+a除外)。不信可以单独把生成的地图代码放到一个新的html里,然后随便打些字测试。但是IE和FF里能正常选中。

找了好久的原因,最终发现在百度地图引入了一个叫做ctrl-pkg_2e03d04.js的js文件(源文件里看不到,在缓存中找到的),里面有三句onselectstart="return false",这也是我所用过的伎俩,但是我却不会破解,给跪

后来贴吧大神帮我解决了,把代码里的api版本从1.1改成1.0就行了,目前没发现大的问题。

在网页上引用了百度地图,那么问题来了

10/11
2014
学习

html的map热区

html的map热区可以在一张图片上划分出多个区域分别设置链接。要点如下:

1.在图片上设定 usemap="#name" (记得加#,否则只在chrome中有效
2.map标签设定name="name"
3.area里面的shape标签有三种定义:
rect为矩形,coords(坐标)需要左上角坐标和右下角坐标;
circle为圆形,coords需要圆心位置和半径;
poly为多边形,依次设定各个顶点的坐标。
如果两个区域重叠了,以优先定义的区域为准

html的map热区

10/11
2014
学习

js表单验证

这也是常用的东西了,但是我之前没做过,现在研究了一下,原理就是提交表单的时候要求一个返回值,这个返回值是true还是false则由JS进行取值判断。以前不了解表单提交时可以判断true或者false的机制,还以为更加复杂呢。做了个最简单的判断姓名不能为空的demo,代码如下

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>js表单验证</title>
</head>
<body>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
function checkfrom () {
	if ($("#youname").val()=="") {
		alert("姓名不能为空!");
		$("#youname").focus();
		return false;
	}else{
		return true;
	};
}
</script>
<form action="../../plus/diy.php"  method="post"  onsubmit="return checkfrom()">
	姓  名:<input  id="youname" name="youname" type="text" value="">
	<input class="coolbg" name="submit" type="submit" value="提 交">
</form>
</body>
</html>

Read More →

js表单验证

10/9
2014
学习

dedecms自定义表单的修改

1.设置必填项

首先在diy.php的第40行开始加入以下代码:

//增加必填字段判断
if($required!=''){
if(preg_match('/,/', $required))
    {
        $requireds = explode(',',$required);
        foreach($requireds as $field){
            if($$field==''){
                showMsg('带*号的为必填内容,请正确填写', '-1');
                exit();
            }
        }
    }else{
        if($required==''){
            showMsg('带*号的为必填内容,请正确填写', '-1');
            exit();
        }
    }
}
//end

然后在自定义表单的代码里面加上

<input type="hidden" name="required" value="content,name,tel" />

value里面就是想要设置为必填项的项目的name

2.改变提交信息之后跳转的页面

打开plus目录下的diy.php,找到第98行:

$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';

/就是回到站点根目录了,可以修改此处如改为/about.html改变跳转到的页面。

3.改变提示信息为弹窗

先把原来的提示注释掉,然后加一句js弹窗代码:

	echo '<script>alert("提交成功,请等待回复");window.close();</script>';

跳转到新页面打开是很坑的,因为这个是提交后判断的,提交的时候就已经跳转了。除非提交前用js验证表单。

dedecms自定义表单的修改