javascript
  • jquery
  • html
  • css
  • 2010-02-08 110 views -2 likes 
    -2

    所有,jQuery的IE()的支持

    我有下面的代码,

    <div id="show" display="none"></div> 
    
        var ele=document.getElementById('show'); 
        ele.style.display='block'; 
        ele.style.padding='1px'; 
        ele.style.borderLeft='solid 1px #d0d0d0'; 
        ele.style.borderBottom='solid 1px #a0a0a0'; 
        ele.style.position='absolute'; 
        ele.style.borderTop='solid 1px #d0d0d0'; 
        ele.style.borderRight='solid 1px #a0a0a0'; 
        ele.style.backgroundColor='#ffffaa'; 
        ele.style.fontSize='12px'; 
        ele.style.fontFamily='helvetica'; 
        ele.style.color='black'; 
    
        $(window).mouseover(function(event) { 
        $("#show").css({'top': (event.pageY)/2, 'left': '10px'}); 
        }); 
    

    在Internet Explorer中的div没有得到显示可能有人请告诉我的代码更改,使其工作在IE上。

    感谢...................

    +0

    为什么你用JavaScript设置初始样式而不仅仅是普通的css? – Natrium 2010-02-08 09:57:16

    +4

    需要更多的上下文。 'display =“none”'不是有效的HTML。你为什么用JavaScript设置所有这些样式?那个jQuery代码应该做什么计算?你为什么期待一个没有内容的div可见? – 2010-02-08 09:59:44

    +0

    这段代码在某些函数中被调用,因此完成了。 – Hulk 2010-02-08 10:00:53

    回答

    1

    您还没有叫秀...

    $("#show").show(); 
    
    +0

    不,它不工作.............. – Hulk 2010-02-08 10:00:01

    +0

    所以你怎么试着打电话给节目。我在上面的例子中看不到它。我无法猜出你想作为最终结果 – Andrew 2010-02-08 10:03:15

    +0

    设置ele.style后。显示=“无”;在javascript中是$(“#show”)。show();需要.. – Hulk 2010-02-08 10:03:55

    0

    首先,你可以设置所有这些样式在一个CSS类。

    #show { copy all your styles here } 
    

    我想如果你想按照鼠标移动移动div,那么你必须处理mosemove而不是mouseover。将文档准备事件中的mousemove函数括起来。

    $(function(){ 
        $(window).mousemove(function(event) { 
         $("#show").css({'top': (event.pageY)/2, 'left': '10px'}); 
        }); 
    }); 
    

    编辑

    如果你想在div作为一个工具提示,那么你可以写这样的事情

    $("#show").css({'top': event.pageY + 15, 'left': event.pageX + 15}); 
    

    检查div的显示风格是块在更改CSS值之前。

    +0

    嗨,其实我试图生成一个div看起来像工具提示 – Hulk 2010-02-08 10:06:14

    +0

    请参阅我的编辑到回答。 – rahul 2010-02-08 10:09:58

    +0

    IT不会在IE – Hulk 2010-02-08 10:15:39

    0

    我想你应该拿出下面一行:

    ele.style.display='block'; 
    

    然后打电话给你的jQuery这样的:

    $("#show").css({'top': 100, 'left': 10}).show();// element gets passed to callback function 
    

    您可能注意到,我给top一个固定值,只是让你可以确定元素显示在AT ALL。如果是这样,那么你可以放心地说IE没有得到event.pageY的值。此外,像素值的CSS属性定义如上,如果我是正确的。

    0

    首先,移动CSS一类

    #show { 
    // put it here 
    } 
    

    为什么使用JavaScript时,你可以用CSS做呢?可能是IE问题与JavaScript代码的那部分。

    而你是空的,地狱,但你想如何看到一个空的div?放一些文字,然后重试。

    0
      <script type="text/javascript"> 
           myFlashObject=new Object 
           myFlashObject.movie="new_wheel.swf" 
           myFlashObject.quality="high" 
           myFlashObject.wmode="transparent" 
           myFlashObject.width="960px" 
           myFlashObject.height="600px" 
           myFlashObject.version="6,0,0,0" 
           commitFlashObject(myFlashObject, "flash") 
          </script> 
    
    +0

    中显示,感谢您发布您的答案,如果您还可以向代码添加一些解释 – Luca 2012-10-19 21:29:03

    相关问题