te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - Why won't .getPropertyValue() return a value for the "borderRadius" property? - Stack Ove
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Why won't .getPropertyValue() return a value for the "borderRadius" property? - Stack Ove

programmeradmin4浏览0评论

Here is the function:

function lastmenuborder() {
    var articleparent = document.getElementById('article').parentNode;
    var articlestyle = window.getComputedStyle(articleparent,null).getPropertyValue('borderRadius');
    alert (articlestyle);
}

I get no value, yet the css for the parent node is:

div#mainbody div.placeholder {
    border-radius: 3px;
}

What would I have to change to return "3px"? All help greatly appreciated; I am still a newb at JavaScript.

Here is the function:

function lastmenuborder() {
    var articleparent = document.getElementById('article').parentNode;
    var articlestyle = window.getComputedStyle(articleparent,null).getPropertyValue('borderRadius');
    alert (articlestyle);
}

I get no value, yet the css for the parent node is:

div#mainbody div.placeholder {
    border-radius: 3px;
}

What would I have to change to return "3px"? All help greatly appreciated; I am still a newb at JavaScript.

Share Improve this question edited May 29, 2012 at 17:37 user1106925 asked May 29, 2012 at 16:22 WK_of_AngmarWK_of_Angmar 3152 gold badges4 silver badges8 bronze badges 4
  • could you check this please? alert(articleparent.style.borderRadius); – Sebas Commented May 29, 2012 at 16:24
  • @Sebas I get no value. Does this mean that I've not referenced the right element? – WK_of_Angmar Commented May 29, 2012 at 16:30
  • If my interpretation of the CSS is correct, it looks like the div.placeholder is getting the border radius styling not, it's parent div#mainbody... this could be why – pandavenger Commented May 29, 2012 at 17:00
  • Are you sure? According to my browser's element inspector, div.placeholder has the style. And CSS applies to the last element in the list. – WK_of_Angmar Commented May 29, 2012 at 17:04
Add a ment  | 

2 Answers 2

Reset to default 12

For getPropertyValue(), you use hyphens instead of camelCase.

This works in Chrome...

.getPropertyValue('border-radius');

But Firefox seems to require specific corners using this syntax...

.getPropertyValue('border-top-left-radius');

getComputedStyle is not supported on IE8 below, to fix this use:

if (!window.getComputedStyle) {
       window.getComputedStyle = function(el, pseudo) {
           this.el = el;
               this.getPropertyValue = function(prop) {
               var re = /(\-([a-z]){1})/g;
               if (prop == 'float') prop = 'styleFloat';
               if (re.test(prop)) {
                   prop = prop.replace(re, function () {
                       return arguments[2].toUpperCase();
                   });
               }
               return el.currentStyle[prop] ? el.currentStyle[prop] : null;
           }
           return this;
       }
   }

var elem = window.getComputedStyle(document.getElementById('test'), "");
alert(elem.getPropertyValue("borderRadius"));
发布评论

评论列表(0)

  1. 暂无评论