比较难的一个需求,求助高手

我看你有戏 2014-08-21 11:22:20
我用浏览器空间写了个软件
这个软件嵌入了一张网页

求助,我在这个网页里面加些js,实现某个div高亮显示,其他区域则是被遮挡
div的obj我是可以获取到了,关键就是怎么样让这块区域变亮,而且其他区域被遮挡


测试通过给50满分
...全文
160 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
步慢生错 2014-08-22
  • 打赏
  • 举报
回复
要是跨域单靠js无法完成。需要目标网站的后台配合。 关键是你的嵌入一张网页是否是获取目标网站的所有html然后嵌入,还是只是一个链接的形式。
我看你有戏 2014-08-22
  • 打赏
  • 举报
回复
引用 8 楼 yukon12345 的回复:
第二行 var oldPosition; 写重复了,改成 var oldZindex
能不能不用jquery的,用基础的js可以吗
步慢生错 2014-08-22
  • 打赏
  • 举报
回复
第二行 var oldPosition; 写重复了,改成 var oldZindex
似梦飞花 2014-08-22
  • 打赏
  • 举报
回复
高亮显示只是样式问题吧?
步慢生错 2014-08-22
  • 打赏
  • 举报
回复
没啥难度。关键看目标的css中position怎么设置的

<html>
<head>
<script src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"></script>

        <script>
            var oldPosition;
            var oldPosition;
            $(function(){
                $('#trigger').bind('click',function(){
                    $mask=$('#mask-layout');
                    if($mask.length){
                        //想显示现实哪个填哪个id
                        $target=$("#mid");
                        $target.css("position",oldPosition)
                        $target.css("z-index",oldPosition)
                        $mask.remove()
                    }else{
                        //想显示现实哪个填哪个id
                    $target=$("#mid");
                        oldPosition= $target.css("position")
                        oldZindex=$target.css("z-index")
                        $target.css("position","relative")
                        $target.css("z-index",10000)
                    $("body").prepend('<div id="mask-layout" style="background-color:#000000;height:'+$(document).height()+'px;width:'+$(document).width()+'px;left:0;right:0;position:absolute;z-index:1000"></div>')
                        $('#mask-layout').css("opacity",0.5);
                    }
                })
                $('#mask-all').bind('click',function(){
                    $mask=$('#mask-all-layout');
                    if($mask.length){
                        $mask.remove()
                    }else{
                    $("body").prepend('<div id="mask-all-layout" style="background-color:#000000;height:'+$(document).height()+'px;width:'+$(document).width()+'px;left:0;right:0;position:absolute;z-index:8000"></div>')
                    $('#mask-all-layout').css("opacity",0.5);
                    }
                })
            })
        </script>
        <style>
            .float{float:left;height: 200px;}
            #left{background-color: red;width: 200px }
            #mid{background-color: yellow;width: 250px}
            #right{background-color: blue;width: 300px;}
            #trigger{position:relative;z-index: 10000}
            #mask-all{position:relative;z-index: 10000}
        </style>
</head>
<body>
<div >
    <div id="left" class="float">左侧</div>
    <div id="mid" class="float">中</div>
    <div id="right" class="float">右</div>
    <div style="clear: both"></div>

    <button id="trigger">狠戳这里显示一个</button><button id="mask-all">猛击全遮罩</button>
    <br>(点击显示或取消遮罩)
</div>
</body>
        </html>

我看你有戏 2014-08-22
  • 打赏
  • 举报
回复
引用 4 楼 henry3695 的回复:
[quote=引用 3 楼 xuzuning 的回复:] 添加一个半透明的层,遮盖住所有元素(用div实现的模式对话框,代码遍地都是) 提升目标div的 css.z-index 。是指处于遮罩的前面
大侠给我个代码吧[/quote] 透明层我会加了,关键是需要指定某个区域高亮显示,就是说不被遮挡,里面的按钮可以被点击
我看你有戏 2014-08-22
  • 打赏
  • 举报
回复
引用 3 楼 xuzuning 的回复:
添加一个半透明的层,遮盖住所有元素(用div实现的模式对话框,代码遍地都是) 提升目标div的 css.z-index 。是指处于遮罩的前面
大侠给我个代码吧
xuzuning 2014-08-22
  • 打赏
  • 举报
回复
添加一个半透明的层,遮盖住所有元素(用div实现的模式对话框,代码遍地都是) 提升目标div的 css.z-index 。是指处于遮罩的前面
我看你有戏 2014-08-22
  • 打赏
  • 举报
回复
引用 1 楼 yukon12345 的回复:
要是跨域单靠js无法完成。需要目标网站的后台配合。 关键是你的嵌入一张网页是否是获取目标网站的所有html然后嵌入,还是只是一个链接的形式。
html代码我可以拿到,也可以控制,这个你不需要管 现在就是想用js去实现我的需求
AutoLISP 培训教程 单元一:AutoLISP 主角潇洒登场 一. AutoLISP 是何方神圣? 1、AutoLISP 是 AutoCAD 的最佳拍檔! 2、AutoLISP 内含于 AutoCAD 软件内,不用另外花钱买! 3、AutoLISP 是强化 AutoCAD 最好、最直接的『程序语言』! 4、AutoLISP 易学、易用,即使不会程序设计的 AutoCAD 使用者,都能在最短的 时间内,写出令人惊 讶、赞叹的功能! 若说 AutoLISP 的出现,是替 AutoCAD 创造一片天的『最大功臣』,实不为过一点也不夸张! 5、AutoLISP 希望您去学习它、改善它、发挥它、享受它.真的!它的威力、魅力无穷! 二. AutoLISP 程序语言的特质分析: 学习 AutoLISP 是非常容易的,对初学者而言,即使没有学习过任何的程序语言,都能很快的上手,写 出精彩漂亮的 AutoLISP 程序! 语法简单:不用特殊的变量宣告,非常富有弹性,比起其它的程序语言,它的语法可说是非常简单而 有其独特的风格! 功能函数强大:除一般性的功能函数外,又拥有为数不少控制配合 AutoCAD 的特殊函数,再加上 AutoLISP 可直接呼叫执行所有 AutoCAD 的指令,以及掌握运用所有的 AutoCAD 系统变量,功能之强 大令人欣喜不已! 撰写的环境不挑剔:只要是一般的文书编辑软件都适用! 如:Windows 的记事本、PE2、PE3、DW3、 书中仙、汉书、EDIT....等 直译式程序: 不用再作编译,『即写即测、即测即用』,马上可以在 AutoCAD 中响应效果,马上就 有成就感! 横跨各作业平台:悠然自得,虽然 AutoCAD 有 DOS、Windows 版本之分但是 AutoLISP 却可在不改 写的原貌下,加载与执行! 三.撰写 AutoLISP 的动机? 1、欲强化 AutoCAD 原有指令时. 2、欲创造更有用的 AutoCAD 新指令. 3、欲简化繁琐的环境设定或绘图步骤时. 4、欲处理参数式绘图时. 5、欲做图面资料读文件、写文件. 6、欲做 AutoCAD 演示文稿展示时. 7、欲达到真正灵活掌控 AutoCAD 时. 8、欲提升自己跨上 AutoCAD 高手列车时. 四.AutoLISP 的效益评估? 1. 对公司负责人或设计主管而言: A. 也许某员工或干部花了 20 个小时撰写一个 AutoLISP 程序,表面上,这将近三天的时间,他连一张 图都没有画,甚至可能偶有发呆、沉思,若此程序一天可以替公司绘图部门节省 1 小时绘图时间,那 算一算,只要 20 天就抵销开发成本,而 20 天以后都是赚的,『用的愈久,省的愈多』! B. 若员工皆有此动力,在不影响正常工作,『鼓励』都来不及,那有『压抑』的道理,甚至还要派遣优 秀人员出去受训,学习更好的设计技巧与创意呢?! C. 千万不要因为您的不懂或压抑,SHOW 您的权威与 POWER,如此,不但对员工造成打击,甚至您可 能成为阻碍了公司计算机化进步的罪魁祸首 D. 当然,若要撰写的程序很多,内部设计人员的程序功力距离太远,达成需求的时间反而变得遥遥 无期,那倒不如求助于市面上已有的相关 AutoCAD 支持软件。 2. 对设计人员而言: A. 得到一笔提升绩效奖金呢? 当然,无形中,『AutoCAD 高手的封号』也将黄功力又往前迈出了一 大步,对个人的成长帮助匪浅,幸运的话,搞不好还可以袍加身,不亦乐乎!!! B. 『半桶水、响叮当』,千万不要因为会写 AutoLISP 程序而自傲、孤僻、嚣张起来,功力的增长, 只是让您有更多『服务他人、服务公司』的机会,若自恃过重,宁可不要! C. AutoLISP 程序功力的累进,是无远弗届的,千万不要『孤芳自赏』,『人外有人,天外有天』,也许 您觉得是『宝贝加三级』的程序,只是其它设计师基本程序中的一部份罢了! D. 既然 AutoLISP 是 AutoCAD 的『最大功臣』,当然不会轻易被舍弃,如此,您的学习,保证不会白 费! E. 『精益求精』、『虚心求教』、『用心学习、观摩』、『决心成为高手』 3.对程序本身而言: A. 少少的几行,却可能有『大大满意』的时候!!! B. 充份掌握了控制、 创造 AutoCAD 的 『尚方宝剑』 ,让您在 AutoCAD 的设计运作中 『得心应手』 , 享受无比的快乐与成就感!!! 五.如何有效的学习 AutoLISP ? 1、先由小程序着手,认识 AutoLISP 语法规定! 2、浏览所有的 AutoLISP 功能函数,重要的功能函数要熟记脑海,俗语说的好『一回生,二回熟』, 除非您不用心,否则没有学不好的道理!!! 3、要懂得偷懒:不要认为在绘图的过程中,繁琐的步骤是

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧