js函数,一个参数放的位置不同报错!
<html>
<head>
<style type="text/css">
div.line {
position:absolute;
z-index:2;
width:1px;
height:1px;
font-size:1px;
background-color:#0000FF;
overflow:hidden;
}
</style>
<script type="text/javascript">
var sX = 0;
var sY = 0;
var eX = 0;
var eY = 0;
var fline=false;
function mouseup(event)
{
if(fline) //fline为真,划直线
{
eX = event.clientX; //结束点
eY = event.clientY;
fline=false;
line(document.getElementById('container'));
}
else
{
fline=true;
sX = event.clientX; //开始点
sY = event.clientY;
}
}
function line(container) {
if (sX == eX) {
if (sY > eY) {
var tempY = sY;
sY = eY;
eY = tempY;
}
for (var k = sY; k < eY; k++) {
createPoint(container, sX, k);
}
}
// y = ax + b
var a = (sY - eY) / (sX - eX);
var b = sY - ((sY - eY) / (sX - eX)) * sX;
if (Math.abs(sX - eX) > Math.abs(sY - eY)) {
if (sX > eX) {
var tempX = eX;
eX = sX;
sX = tempX;
}
var left = container.style.left;
var top = container.style.top;
for (var i = sX; i <= eX; i++) {
createPoint(container, i, a * i + b);
}
}
else {
if (sY > eY) {
var tempY = sY;
sY = eY;
eY = tempY;
}
for (var j = sY; j <= eY; j++) {
createPoint(container, (j - b) / a, j);
}
}
}
function createPoint(container, x, y) {
var node = document.createElement('div');
node.className = 'line';
node.style.marginTop = y;
node.style.marginLeft = x;
container.appendChild(node);
}
</script>
</head>
<body onmouseup = mouseup(event)>
<div id="container" style="width:100%;height:100%;border:1px;margin-left:1px"></div>
</body>
</html>
相关推荐
JS中把函数作为另一函数的参数传递方法(总结)
今天在给元素注册事件的时候,使用addEventListener遇到了一个问题,这个好像之前也遇到过,觉得有必要总结一下,就是js函数作为参数引发的问题。首先看以下代码,觉得下面代码有问题吗?是否能达到点击id3对应的元素后,弹出id3呢? 例1 var obj3=document.getElementById('id3'); obj3.addEventListener('click',curClick('id1'),true); function curClick(id){ alert(id); } 答案是否定,不能达到我想要的效果,因为这行代码在页面加载完成时候,就会弹出id
一个Js文件函数中调用另一个Js文件函数的方法演示
我们知道,在html中,利用[removed][removed]引入的两个js是不可以相互调用的。那么该如何解决呢?当然,你可以将代码通通copy过来,也许你并不喜欢这样。 例如有这样一个html,里面有一个按钮,当按下时调用b.js文件中的方法b()。而b()中又要调用a.js文件中的方法a()。若要实现这个功能,必须注意,将要引入的Js文件代码放在</body>下面。 首先,我们在html中引入b.js,并在</body>之后加入引用语句。如下: <html>
JavaScript函数参数使用带参数名的方式赋值传入的方法
主要介绍了JavaScript函数参数使用带参数名的方式赋值传入的方法,实例分析了javascript函数传递参数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
js 每隔两秒执行一个函数 javascript
每隔两秒执行一个函数 使用jascript写
使一个函数作为另外一个函数的参数来运行的javascript代码
使一个函数作为另外一个函数的参数来运行的javascript代码


