2017-08-01 62 views
0

我不知道爲什麼會發生這種情況。所有教程似乎表明你開始使用fabric.jsvar canvas = new fabric.Canvas('c')但每次都吐我回錯誤:Uncaught TypeError:無法在字符串'c'上創建屬性'style'

fabric.min.js:2 Uncaught TypeError: Cannot create property 'style' on string 'c'

var canvas = new fabric.Canvas('c');
html, 
 
body { 
 
    color: cyan; 
 
    font-family: 'Raleway', sans-serif; 
 
    font-weight: 100; 
 
    height: 100vh; 
 
    margin: 0; 
 
    background-image: url("images/bg.png"); 
 
    background-size: cover; 
 
} 
 

 
.full-height { 
 
    height: 100vh; 
 
} 
 

 
canvas { 
 
    border: 1px solid #ccc; 
 
}
<meta http-equiv="X-UA-Compatible" content="IE=edge"> 
 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
 

 
<title>Canvas Tests</title> 
 

 
<!-- Fonts --> 
 
<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
 
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.7.17/fabric.min.js"></script> 
 
<link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css"> 
 
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.1/css/materialize.css"> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.1/js/materialize.min.js" type="text/javascript"></script> 
 
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> 
 

 
<div class="row"> 
 
    <div class="col m10"> 
 
    <canvas id="c" width="300" height="300"></canvas> 
 
    </div> 
 
    <div class="col m2"> 
 

 
    </div> 
 
</div>

+0

您的代碼在$(document).ready()中等待dom被加載,因此c存在嗎?如果它是共享所有調用JS的地方。 –

+0

立即爲您創建[mcve]會顯示錯誤 - 您需要將's'添加到http:'https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.7.17/fabric.min .js' - 當我這樣做時,我不會再有任何錯誤 – mplungjan

+0

@AlexK。是的,問題是沒有把我的JS包裝在$(document).ready()中。謝謝。 –

回答

0

爲$(文件)。就緒之內你的代碼( )等待dom被加載並因此c存在?如果它是共享所有調用JS的地方。 - Alex K

相關問題